Fix Board constructor.
Add Board method to get node occupation status.

- add method Board::is_occupied;
- remove unused method Board::add_occupied;
- remove unused method Board::rm_occupied;
Remove debugging couts from BoardGraph.
Add list of node neighbours.
Add BoardGraph methods to handle neighbours.
Remove pawn's current node from the found path.
Use nodes in WalkMove.
Use node in Board::make_walking_move.
Remove method Board::recalc_dir.
Block neighbours of pawn init nodes.
Add new Board methods.

- add Board::pawn_final_nodes;
- add Board::get_path;
Fix walking move in Game.
Add method Game::board.
Refine players.

- pass Board instance at construction time;
- pass related Pawn instance at construction time;
- use nodes instead of directions for moving;
- FakePlayer uses A* algorithm to calculate shortest path;
- replace standard library random functions with boost implementation;
Fix PlayerFactory.
Fix players handling in GameState.
Change sleep time.
Add method BoardGraph::is_adjacent.
Move board_graph implementation into cpp file.
Remove debug code from found_goal.