UI components factories
sm & di refactoring
Merge branch 'feature/di' into develop

Conflicts:
	module/Vivo/config/module.config.php