Fix pre route handlers not firing

* Check and fire specific pre route handler after the 'all' has been fired.
* Added spec for Thumbs.history
* Added test runner

Remove the view from the registry as part of `remove()` and add in render if it is not already there. Also call `undelegateEvents` from `remove`.

**Install Dependencies**
`npm install && bower install`

**Test**
`grunt test`

**Build**
`grunt build`

- [ ] @doug-martin 
- [ ] @andymoon
- [ ] @jgchristopher
- [ ] @jkc
- [ ] @aheuermann