Rename things for accuracy and extract some CMA case registries

Rename anything which claims it's for documents or specialist documents but is actually for CMA cases only.

Tidy up the observers and extract a `CmaCaseServiceRegistry` and `CmaCaseObserverRegistry`.

These changes have revealed a couple of possible bugs due to the wrong dependency being used, which we should investigate.
I'm not even sure we need this anymore I have no memory of why we needed it. Just delete?