diff --git a/lib/gh/remote.rb b/lib/gh/remote.rb
index <HASH>..<HASH> 100644
--- a/lib/gh/remote.rb
+++ b/lib/gh/remote.rb
@@ -75,7 +75,8 @@ module GH
 
     # Internal: ...
     def http(verb, url, headers = {}, &block)
-      connection.run_request(verb, url, nil, headers, &block)
+      body = headers.delete :body
+      connection.run_request(verb, url, body, headers, &block)
     rescue Exception => error
       raise Error.new(error, nil, :verb => verb, :url => url, :headers => headers)
     end
For http requests, pass body as key-value pair

`GH::Remote` should be able to pass body to HTTP backend.
Changing `#http` call signature
(`def http(verb, url, body, headers = {}, &block)`) may be a little
risky, so we piggyback on `headers`.