Python based sudoku solver