ConstructorInstanceMaker: Refactored and added tests