functional main menu, closes #4