updated CV module with factory and with api's(for dependent entities)