Refactored FactoryInstanceMaker