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

- Updated all docstring in a proper format
- Using api's for product/repo and sync
- Using ui/factory for content-view create
- Updated repo_url to use Constants for repository URL's
A `sync` helper method will be great here, but implementing it should be done in a separated PR