/// <summary>
        /// handle het command af.
        /// </summary>
        /// <param name="spelersnaam"> naam van de speler.</param>
        /// <param name="dimension">dimension van het spel.</param>
        /// <param name="tegenComputer">Tegen de cpmputer spelen.</param>
        /// <param name="game">Huidig game.</param>
        /// <return>De message die gereturnd moet worden. </return>
        /// <returns>De messge.</returns>
        public string Handle(string spelersnaam, short dimension, string tegenComputer, out GameOX game)
        {
            string returnMessage = string.Empty;

            game = null;
            if (string.IsNullOrWhiteSpace(tegenComputer))
            {
                // zoek in de spelHandler of er al een open spel is met die dimension
                game = this.spelHandler.GetOpenSpelbyDimension(dimension);

                // zo ja, voeg speler toe en start spel
                if (game != null)
                {
                    game.AddPlayer(spelersnaam, this.tcpClient, dimension);

                    foreach (Speler speler in game.Spelers)
                    {
                        if (game.FindSpelerByNaam(speler) == speler.Naam)
                        {
                            speler.Naam = speler.Naam + 1;
                        }

                        break;
                    }

                    game.IsGestart();
                    game.TcpClients.Add(this.tcpClient);
                    returnMessage = EventHelper.CreateSpelgestartEvent(game);

                    return(returnMessage);

                    // // bepaal wie er gaat beginnen
                    // voor nu, speler 1 begint
                    //  stuur naar speler 1 bericht dat hij moet beginnen
                    //  stuur naar speler 2 bericht dat hij moet wachten
                }
                else
                {
                    // nee, maak spel aan
                    // voeg de speler toe
                    // en zet op de wachtlijst
                    game = this.spelHandler.CreateGame(dimension, spelersnaam, this.tcpClient);

                    game.WachtOpAndereSpeler();
                    game.TcpClients.Add(this.tcpClient);

                    // de speler moet wachten op een andere
                    returnMessage = EventHelper.CreateWachtenOpEenAndereDeelnemenEvent();
                }
            }
            else
            {
                string[] deNaam = spelersnaam.Split(new char[] { '*' });
                game = this.spelHandler.CreateGame(dimension, deNaam[1], this.tcpClient);
                game.AddCpmputerSpeler(deNaam[0], dimension);
                game.IsGestart();
                game.TcpClients.Add(this.tcpClient);
                returnMessage = EventHelper.CreateSpelgestartEvent(game);
            }

            // wat wil ik nu terugsturen?
            // Commandos.StartSpel), spelersnamen.ToString()
            return(returnMessage);
        }