Introduced IEntityFactory class