WIP: Functional tests

- [x] Setup intern
- [x] Test unauthenticated index
- [x] Test sign in
- [ ] Create mock device that responds to commands
- [ ] Bootstrapping script
- [ ] Test ring
- [ ] Test lock
- [ ] Test erase
- [ ] Extract constants
Unrelated, and I can PR this after I play with these separately and make sure nothing breaks:

```sh
$ david
```

### Outdated Dev Dependencies

| MODULE | CURRENT | LATEST |
|----|----:|----:|
| grunt | 0.4.4 | 0.4.5 |
| grunt-autoprefixer | 0.7.3 | 0.8.1 |
| grunt-bower-requirejs | 0.10.0 | 0.11.0 |
| grunt-contrib-connect | 0.7.1 | 0.8.0 |
| grunt-contrib-cssmin | 0.9.0 | 0.10.0 |
| grunt-contrib-imagemin | 0.7.0 | 0.7.1 |
| grunt-jscs-checker | 0.4.3 | 0.6.1 |
| grunt-sass | 0.12.1 | 0.14.0 |
| grunt-usemin | 2.1.1 | 2.3.0 |
| jshint-stylish | 0.2.0 | 0.4.0 |
| load-grunt-tasks | 0.4.0 | 0.6.0 |
| time-grunt | 0.3.1 | 0.4.0 |