Ruby port of Peter Norvig's Sudoku Solver