Sudoku player, solver, and generator