renaming puzzle to Sudoku
improving builder
extracting builder into separate class
adding more exception handling
adding more tests