docs(di): fix typos and grammar
feat($q): add $q.always() method

Add $q.always(callback) method that is always called whether the promise is successful or fails; includes unit tests and updates
documentation.
docs(filter): improve syntax for usage in templates
test(location): should not rewrite Html5 deep urls
fix(location): correctly rewrite Html5 urls
feat($q): add optional canceler and promise.cancel method

Add an optional argument to $q.defer to provide a canceling function.
This exposes a promise.cancel method that can be used to call the
canceling function and reject the promise (and all derived promises).
See existing implementations in Dojo Toolkit and Promised-IO library
for reference.