COOPR-513 adding label as a field to providers, hardwaretypes,

imagetypes, services, and cluster templates. Also doing some
refactoring so they all share the same code for common fields.
Open a jira to fix the providermap_type - would be better to have a a Map<String, ProviderInfo> where the Type ProviderInfo encodes the provider information instead of a Map of a Map.