Is this part of the interface actually something that you used to try to implement factories in extensions? That can be removed if you use a plugin manager