Add JS test harness

Changes:
* Add initial JS tests and tests bundle task (say that 10 times fast) to
  gulp build file
* Add the testem HTML harness during provisioning (development only)
* Add ./scripts/testem.sh to run JS unit tests in a browser window
* Add testem (ci mode) to ./scripts/test.sh to run tests on Jenkins
I changed this to watch all JS files (that was an oversight).

I can confirm this watch works because of this code (1 line down) `gulp.watch(intermediaryDir + '**', ['collect-debug']);`. Since the test bundle gets published to `bundleDir` (which is inside `intermediaryDir`) this triggers the `collect-debug` task.