Handle `Connection: close` header re:connection pooling

Do not put connections that have been closed via the connection: close header back into the connection pool. This prevents an issue where a successful response with a connection: close header can cause dead connection reuse which leads to timeouts and errors.

Adds a simple test to make sure this is working properly.