Fix one extremely annoying issue which caused random test crashes.

We need to make sure to always explicitly add the "Connection: close"
header if we intend to close the connection.  Otherwise, a race condition
happens where the ServicePoint may reuse the connection while it's still
open and then a connection reset exception happens when we actually
close it.