Abstract Interfaces for Cell, Grid and Puzzle

Contained in this commit are the interfaces that will serve as the basis
for implementation of the Cell, Grid and Puzzle Classes of a Sudoku
game.