Grid model

Implements GridModel functionality. Includes testing for initialization of GridModel, size queries, querying of cells (isStart, isGoal, openings) via GridModel. Includes testing for connections between two cells. Added testing initialization methods to GridGenerator and GridModel to initialize with a string and grid, respectively.
I think we should check `if (self)`.