Python-based sudoku solver