Small bug fixes
Added a load of tests for board.py