Added a goldmine and a miner class. Added tests
Added a test to verify the case where the fisherman picks a point in the middle of the lake and tries to go there. Fixed the fisherman to ignore points it cannot reach
Fixed import statements
Removed an un-used import statement
Added convenience methods to create tests that replicate a scenario in the game
Added a test for the case when an invalid point (even, odd) was used to get a tile. Updated the model to throw an exception
Removed un-used method Building::needsWorker(Material). Also minor un-related fixes
Changed findWayWithExistingRoads to return null instead of throwing an exception when it can't find a path. Updated callers to handle this. Removed a left-over debug statement.
Fixed forester to use the get|setHome method in Worker instead of its own hut variable
Tightened tests for production
Made GameMap::removeRoad() public so the app can use it
Couriers stood still without doing anything when there was a lot of cargos to carry. Pasted as a test case and discovered that couriers that get re-assigned to a road and that happen to be standing on the exact spot they should go to ended up still being WALKING_TO_ROAD. Updated model to fix this
Roads could previously be built across lakes. Added tests to make sure this is not allowed and updated the model to comply with the tests
Whitespace fix
Whitespace fix
Changed the default inventory so that there are 10 privates available to populate the first barracks
Extended the max runtime of Utils::fastForwardUntilBuildingIsConstructed() and added Utils::occupyMilitaryBuilding()
Fixed barracks to not update the border until they are occupied. Added tests for this and updated the model