Reverted Sudoku.solve split into logic and brute