Added randomize validator for Answer puzzles
Merged data structures for tracking PuzzleKind details
Refactored validators by PuzzleKind
Moved dimensions validator to Crossword as it's not common to all puzzles
Moved common validators to validators file
Moved logic to core file to keep namespace clean
Added required imports to init file