A simple Sudoku puzzle solver using constraint satisfaction programming.
Sudoku puzzles are read from a file where each line is in the format "123456789". If a cell is empty, it should be stored in the file as a 0. All white space and any lines after the first 9 are ignored.