In order to support new entity types in Wikibase Repository, extensions need to be able to register handlers for the entity types they add. There are dozens of types of such handlers that need to be registrable. (Not just for new entity types.)
At present most handler lists are set in the top level factory (WikibaseRepo), or are being refactored towards being set there.
Example: getEntityIdParser in WikibaseRepo provides an EntityIdParser to the rest of the code, avoiding the using code to bind to any specific parsers or global state. This method that constructs it can add support for new types of entity ids, though it needs to somehow get the information from the extensions.