Sped up the sudoku solver by ~60%.

This was done by making guesses in squares for which only two options exist
first.  If no squares have two options, then the guess is made in a square
for which only three options exist, then four.  If no squares exist with
four or fewer possibilities, then a guess is made from the first available
square.