DATACMNS-406 - Tighten contract for RepositoryMetadata implementations.

We now resolve the domain- and id-types eagerly within the constructor of AbstractRepositoryMetadata implementations to prevent a RepositoryMetadata instance to be created in an invalid state.
Pulled-up repositoryInterface property to AbstractRepositoryMetadata.