Refactor/simplify the way we define and handle channel, cache and cache-container metrics

Defining metrics per resource via enums simplifies things immensely.
Also, some code cleanup:
* Use consistent class naming for resource definitions and add/remove/describe operation handlers.
* Eliminate superfluous static final values.
* Breakup CacheConfigOperationHandlers into individual add operation handlers for cache stores.
* Traverse model via resource paths where possible.
This will break in domain mode. where path is /profile=name/...
rather do
String containerName = address.subAddress(0, address.size() - 2);
String cacheName = address.subAddress(0, address.size() - 1);