Add the underscore lib and use it
Move qunit files to "external" folder
Pass objects rather than constructor functions in GameManager
Set up imports for tests and test that we can test
Add tests and rewrite semi-random tile value generation
Refactor semiRandomThreesFunctionGenerator

* Use n1, n2 as args instead of the difference (harder to get wrong).

* Consistent variable names

* Update tests and calling functions