First stab at sudoku