Use a constant for the max number of sticks that can be picked up.
Add ability to check the game state and see if the game is over. Added tests for it.
This allows refactoring out a doPlayerTurn method in NimGame that returns true if play is to continue.
Refactor out small nicely named, single purpose methods in NimGame to enhance readability and maintainability.
Fix bug in the validation when requesting the number of sticks to pick up. This regression would have been avoided if I have better unit tetst coverage.