Vivo module refactoring to isolate it from the application