Ruby metaprogramming magic

Some Rack Adapters expose the underlying IO object in their request and response bodies, others don't.

IO.copy_stream for instance looks for .to_io and uses it for its magic.
Expose the request body as a IO object.
Merge pull request #163 from seancribbs/add-io-object

Ruby metaprogramming magic