Handle messages without a Content-Length header.

If no Content-Length is supplied on a response, the client should read from the server until the connection is closed.  See [section 4.4 of RFC 2616](http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.4).

I've included tests.