detect when http client request is finished and close connection

If the request is finished before we need to respond, we set a flag and
close the connection.

We also close the connection when the request finishes anyway because we
really like a new connection for each request. Things play nicer with
bouncy that way.