Support early close from a server.

Pinging @kazu-yamamoto @meteficha, this is just the client side of:

https://github.com/yesodweb/wai/commit/38934e7eccbf8fded47d3e3cb5ff3fd36b27ee82

The one downside I can see with this is that we could end up ignoring
exceptions thrown while sending the request headers in some cases.
However, I'm not convinced that even *that* should really be considered
a bug, since it's theoretically possible that a server will send back a
response as soon as the connection is open to give some kind of an error
message and not consume any of the request.