public void RunGame()
        {
            _grid.SetUpGrid(Constants.GridLength, Constants.GridWidth);
            _grid.Initialise();
            var grid = _grid;

            //_universeGeneratorLogger.LogInformation("New universe grid created", grid);
            do
            {
                while (!_input.ConsoleKeyAvailable())
                {
                    _output.Clear();
                    _output.WriteLine("Welcome to Game of Life");
                    _output.WriteLine($"Press 'Q' to stop {System.Environment.NewLine}");

                    PrintGrid?.Invoke(this, new GridPrintEventArgs(_output, grid.Grid));
                    grid = _game.LoopThroughEachCell();
                    Thread.Sleep(400);
                    var hashCode = grid.GetHashCode();
                    //_universeGeneratorLogger.LogInformation($"This is the Grid's hashcode: {hashCode}");
                }
            }while (_input.ReadKey(true).Key != ConsoleKey.Q);
        }