static async Task Main(string[] args)
        {
            var           gameBoard = new Gamefield();
            IGameAnalyser analyser  = new BasicGameAnalyser();

            var count = gameBoard.GetFreePositions().Count();

            for (int i = 0; i < count; i++)
            {
                var rnd    = GenerateRandomNumber(0, 19 - i);
                var card   = gameBoard.GetUnusedGamecards().Skip(rnd).First();
                var result = await analyser.PlayRoundAsync(gameBoard, card);

                gameBoard.TrySetCard(result, card);
                //gameBoard.SaveRound();
                System.Console.WriteLine(gameBoard.ToString());
                System.Console.WriteLine("Boardpoints: " + gameBoard.GetBoardPoints());
                System.Console.ReadKey();
            }
            //var result = gameBoard.GetPositioInfo(4, 2, new Gamecard(3, 4, 5));
            //System.Console.WriteLine(result);
        }