private async void StartEverything()
        {
            Data = new PinballData();
            await Task.Run(() => Data.LoadDatabase(databasepath));

            //InitializePlayers();
            //LoadDatabase();
            await Task.Run(() => InitializeKeyboardHook());

            await Task.Run(() => InitalizeThumbnails());

            await Task.Run(() => InitializeBGMusic());

            RandomTable();
            InitalizeWindows();
        }
        //Default Constructor
        public PinballFrontEndViewModel()
        {
            logger.Info($"Starting Pinball Front End: {Model.ProgramPath.Value}");

            Data = new PinballData();
            Data.LoadDatabase(databasepath);

            //InitializePlayers();
            //LoadDatabase();

            InitializeKeyboardHook();
            InitalizeThumbnails1();
            InitializeBGMusic();
            RandomTable();
            InitalizeWindows();


            //StartEverything();
        }