Extract CmaCaseServiceRegistry

Extract CMA case services into a registry of their own. This cleans up
the bloated ServiceRegistry and will make it easier to find common
behaviour between service registries that can be pulled out into shared
behaviour.