Metric name strategies for InstrumentedHttpClient and InstrumentedClientConnManager

This adds the ability to inject a metric naming strategy for HTTP request timers, plus a few strategies including a default implementation equivalent to the current setup.

It also adds the ability to override the domain portion for InstrumentedClientConnManager, which is useful when you've got more than one client configured.