Sudoku Solver: Uses elimination to solve. This won't work on very difficult puzzles.