Various fixes for JS tests

- updated js tests to use latest libraries
- moved most of the js install to npm (rather than bower)
- added code for donations
- created concurrent grunt tasks for building/watching source and
  running karma tests
- fixed py script to parse django templates into handlebars templates so
  they can be loaded in the js tests.
- fixed some tab/space issues