Fix bug in how cells are added to their GridViewController's views

Ensure that cells are added to their GridViewControllers'
gridContainerView, instead of directly to their views.
Resolve bug causing puzzles to create incorrect json

Ensure KakuroPuzzles always compile to json correctly.
Ensure they set their cells' types to empty only if they
are not clue or answer cells.
Ensure KakuroGridViewController updates puzzle

Ensure that when KakuroGridViewController is updated,
it updates its puzzle correctly. When a user edits an
answer cell it must merely update that cell in its puzzle.
When a user replaces a cell, or edits a clue cell, the
cell must be replaced and all answers on the puzzle must be
removed.
Remove unused code from KakuroSolver

Remove a snippet of unused code from KakuroSolver.
Ensure AnswerCellView updates display when edited

Ensure that when new candidates are set on instances
of AnswerCellView, that they redraw.
Add a show answers checkbox to KakuroEditorViewController

Add a checkbox to KakuroEditorViewController that will
toggle whether or not the answer to a Kakuro puzzle is
currently displayed.
Factor Sudoku and Kakuro editor logic up

Factor logic from SudokuEditorViewController and
KakuroEditorViewController up into a parent class. Remove
their shared protocol PuzzleDisplaying, and place the
shared interface on this superclass as well.