Send data.body to _request() and also set a Content-Length header.

Additionally, this tries to fix the return object to be the body
data instead of the non-existent req.body.  Ultimately, we probably
want to pass the body to request() as a string so that we can support
non-JSON body content as well.
Merge pull request #20 from synapsestudios/bugfix/20

POST requests not done correctly