Solver for Sudoku puzzles