feat(Scope): add `$watchSet` method for observing a set of expressions

It any one expression changes then the listener function fires
Port of angular/angular.dart@a3c31ce1dddb4423faa316cb144568f3fc28b1a9
WIP