Sudoku library and solver