NEXUS-6220: Be smarter about connection reuse

The `Hc4Provider#createHttpClient()` is meant as "quick access" to a preconfigured HC4 client (preconfigured with global configuration). This method is not used by proxy repositories but by everything else needing HTTP client. Originally, it was creating clients that were not reusing connections due to "resource optimisation". Still, there are cases when connection reuse is needed. This set of changes makes HC4 a bit "smarter", and when connection reuse is needed (to have global configuration properly function), it will create properly configured HTTP clients. No code change needed in users of the method, as the decision basically depends on global configuration only, not the caller.

Still, another method introduced, where caller have explicit control over connection reuse.

Issue
https://issues.sonatype.org/browse/NEXUS-6220

CI
https://bamboo.zion.sonatype.com/browse/NX-OSSF12