Made some refactorings, updated the GameEngine.cs logic, moved methods to GameBoard.cs, added documentation where missing, fixed bugs