Adds getDictionary to Game
Adds a FileDictionary class
Factors Dictionary code into common base class
Refactors integration test code
Adds a Strategy class to solve the puzzle
First implementation of StrategyA
Implements a simple strategy
Adds test for new CellCollection method
Implements at() and contains() for Word
Adds Word::length()
Adds Board getWordsContainingCell
Adds isSolved method to Cell
Adds getUnsolved to CellCollection
Updates Solver class