Add max_body_size and body_timeout limits to http1connection.

These limits can be set on a per-request basis during headers_received.
Remove HTTPServer.__init__'s **kwargs.

New keyword arguments to this constructor are no longer likely to
be simple pass-through arguments to TCPServer.
Synchronize chunk size between HTTP1Connection and IOStream.

Increase IOStream default chunk size to 64KB.
Make HTTP1Connection single-use-only.

The server loop is now on a separate HTTP1ServerConnection class.
Clean up and comment http1connection internals.

Be specific about read/write vs request/response; the code moved from
HTTPServer often conflated the two.
Move address manipulation from HTTP1Connection to HTTPServer.

The connection now contains only an opaque 'origin' object to which
the caller can attach address info.  This object can also be mutated
as in HTTPServer's xheader support.
Move HTTP/1.0 Connection: keep-alive behavior to http1connection.

Also remove the supports_http_1_1 check from GzipContentEncoding
since versions don't really matter with the accept-encoding check.