Factory and subclasses created and imported