No Backbone/jQuery

This is based on the feature/tooling branch, so make sure to review and merge that request first before reviewing this one, and you won't see both sets of changes at once.

* Removes Backbone (and, implicitly, jQuery)
* Adds Q for promises (2.5kb gzipped)
* Mocks the browser's XMLHttpRequest object so that we can successfully test in Node (we should use this strategy for Threads)
* Tests get, add, update, and remove