Fixed a bug with isWin method

It seems like _.isEmpty sometimes returns true on empty collections.
https://github.com/jashkenas/underscore/issues/1715
Added some rudimentary tests

They don’t do anything useful yet.
Added world's hardest sudoku puzzle to tests

According to
http://www.telegraph.co.uk/science/science-news/9359579/Worlds-hardest-s
udoku-can-you-crack-it.html
Added another hard puzzle to tests
Removed some unnecessary Underscore calls
Minor change to tests
Added function to solve sudoku puzzles

This may not be exposed to the user, but it may help to generate
puzzles that are solvable, but with predictable difficulty, possibly by
solving a blank grid and then removing some digits. I borrowed heavily
from Peter Norvig’s techniques, involving constraint propagation and
depth-first search, at http://norvig.com/sudoku.html but the code is
all mine.
Removed unnecessary line from tests
Use number inputs for digits

Originally, I shied away from these because they had arrow buttons that
couldn’t be removed without browser-specific hacks, but I changed my
mind and decided to do it anyway, because it seems to be the only way
to make the number keyboard show up on Android.