Http client handles the case when the server chooses to close
the connection before sending the response.

The request is retried on a new connection, as for RFC 2616 sec 8.1.4.
This fix is motivated by the actual problem with speaking with CouchDB
server which closes the connection *some time* after responding with 409
status, without giving the headsup with Connection: closed headers.
Tweak the strategy used by http client further.

Make sure that if we are forced to retry a connection, we use a new one.
Retrying disables pipelining and reusing idle connections.