Factor Kakuro grid and solve panel logic into its own controller

Create another NSViewController subclass and xib to store
the logic and layout for the kakuro grid and its solve panel.
Together these components represent the editor ui that is
unique to Kakuro puzzles, and they are factored out so that
the parent EditorContainerViewController can swap them out
with Sudoku components.
Rename KakuroCore to PuzzleCore

Change the naming in KakuroCore to make the project
more general to accomodate sudoku puzzles, and the naming
of the classes to make them more specific to Kakuro to
avoid namespace collisions with the sudoku classes soon
to be added.
Factor some Kakuro model classes into parent classes

Factor some Kakuro model clsases into parent classes that
apply to all grid based logic puzzles.
Create simple model for sudoku puzzles

Create a few simple model classes to represent
the structure of a sudoku puzzle.
Allow toggling between Kakuro and Sudoku puzzles

Add a drop down menu to the editor panel, to allow users
to toggle between the kakuro editor grid, and a simple
sudoku grid.