Inject document type not a pre-scoped model to repositories.

In each case in the `RepositoryRegistry`, `specialist_document_editions` was just a pre-scoped `SpecialistDocumentEdition` by document type.

I have refactored this scoping to happen within the Repository, as every place that a repository was being used was being scoped by document type, and there is no scenario we have encountered where this is not the case.

Further, part of the point of using the repository pattern is to concrete all datastore access/operations inside the repository, so having this occur outside the repository smelled a little to me.

This will provide further benefits when we introduce a Single Source of Truth to list the available document types, making it much easier for us to use that Single Source of Truth in future to simplify repository (and builder, and etc) access.