Adds first test cases and preliminary code for BoardAdjuster
Revises tests. Adds more useful tests. Adds code to generate incomplete boards from Tom's complete boards. Currently only accounts for difficulty by overall number of givens -- not givens per row/column, etc.
Merge branch 'DifficultyAlgorithm'