add in new file to handle the menu system, refactoring incoming