3x speedup by keeping a list of free spots in the sudoku and eating off that, instead of just checking all 81 spots every time.