feat($q): add shorthand for defining promise error handlers

Now we can instead this

    promise.then(null, errorHandler)

with this

    promise.catch(errorhandler)

Closes #2048
chore: bower install before travis run tests