switch to grunt based build system

TODO:
----------

- [x] get stuff working.
- [x] tests need to work again
- [x] lock connect during builds (copy from glazier)
- [x] jshint
- [x] update with master
- [ ] headless tests

some future work beyond ^^ is planned.