Added custom class, subclasses, factory to project