Don't shutdown reusable connection manager on error

When a request fails, only shutdown the connection manager if it's
single use. If the connection manager is reusable, it should be left
open so that it can be used by subsequent requests.

Closes #150.
bump some deps
Merge remote-tracking branch 'joelittlejohn/avoid-connmgr-shutdown'
bump httpcore dep
update changelog