Extracted the from_stream static method for constructing a HeaderCollection from a socket.
Added the read_body_from_stream function.
Automatically add Content-Length to outgoing requests with bodies.
Made it read bodies from the streams.