Extract Hc4ProviderBase superclass from Hc4ProviderImpl

This makes possible to reuse the functionality without all the extra cruft

Signed-off-by: Alin Dreghiciu <adreghiciu@gmail.com>
Merge pull request #759 from sonatype/extract-hc4-provider-base

Extract Hc4ProviderBase superclass from Hc4ProviderImpl