Hard sudoku solved with recursion - lots to tidy up..