viewmodels support and mainmenu functionality