chore(gulp): use pipe, refactor gulpfile

Closes #25
chore(gulpfile): add es6 build
chore: set up rtts-assert
chore: use shared karma from pipe
chore: missing semicolon in gulpfile
chore: add missing deps
chore: set sauce project name
chore(travis): fix sauce key
chore(package.json): upgrade gulp-jshint to v1.5.3

This version of gulp-jshint depends on jshint@2.5.0, which includes some basic
support for ES6 template literals.

Closes #26
Closes #27
style(watchtower): use template literals rather than explicit string operations

Template literals are nice to look at, and jshint won't yell at us for using them,
anymore.
fix(dirtychecking): don't throw when watching a child of an initially undefined property

Fixes #29
Closes #33
Notifier: proof of concept
Notifier: do nothing if there is no watch
ce: fix collection watches
Enabled a general mechanism for plugging in field observers.
Merge branch 'notifier' of https://github.com/angular/watchtower.js into notifier