HTTPResponse io package compatibility

This PR addresses issue #182.  It does so by adding a few key methods to HTTPResponse, and changes it to subclass from `io.IOBase` to fill in the rest (mostly the relevant boilerplate stuff for `io` objects that are neither writeable nor seekable).

This also adds tests to maintain 100% coverage.