private void MenuLoop()
        {
            ReadNewSaves();

            //TODO this may be better handled with something more readable than a key
            var choiceKey = _menus.MainMenuKeyChoice();

            switch (choiceKey)
            {
            case ConsoleKey.S:
                _messages.WaitingToPush();
                _messages.PushStatusDisplay(_sharedRepoManager.PushWithStatus(_currentLocalMappingProfile.LocalMappings, _folderPathManager.LocalRepoPath));
                break;

            case ConsoleKey.A:
                AddGameMenu();
                break;

            case ConsoleKey.T:
                try
                {
                    if (_currentLocalMappingProfile == null)
                    {
                        _currentLocalMappingProfile = _mappingManager.ReadLocalMappingProfile();
                    }
                }
                catch (Exception e)
                {
                    _logger.Error(e, "The application cant find any games that could be tracked");
                    break;
                }
                if (_applicationTrackingManager.SetTrackingOnApplications(_currentLocalMappingProfile.LocalMappings, out var appsTracked))
                {
                    List <LocalMapping> changedMappings = _currentLocalMappingProfile.LocalMappings.Where(i => appsTracked.Contains(i.FileName)).ToList();
                    _sharedRepoManager.PushWithStatus(changedMappings, _folderPathManager.LocalRepoPath);
                }
                break;

            case ConsoleKey.Escape:
                return;

            default:
                break;
            }
            ;

            MenuLoop();
        }