Just to explain my thought process, the main reason I wasn't using the binding stuff was because using `this` inside an anonymous function makes the code harder to read because any experienced JavaScript programmer will think it's a mistake.  The obvious function would then be to break the anonymous function out into a prototype function to eliminate that confusion. But then we have private prototype functions, which we previously wanted to avoid (to not crowd up the debugger and to make them "private").  That all being said I'm fine with the changes..  So

```
subscriptions.push(subscribeAndEvaluate(viewModel.pauseViewModel.toggled, function(value) {
    if (value) {
        that._shuttleRingPointer.setAttribute('class', 'animation-shuttleRingPausePointer');
    } else {
        that._shuttleRingPointer.setAttribute('class', 'animation-shuttleRingPointer');
    }
}));
```
now becomes
```
subscriptions.push(subscribeAndEvaluate(viewModel.pauseViewModel.toggled, this._togglePointer, this);

Animation.prototype._togglePointer = function(value) {
    if (value) {
        this._shuttleRingPointer.setAttribute('class', 'animation-shuttleRingPausePointer');
    } else {
        this._shuttleRingPointer.setAttribute('class', 'animation-shuttleRingPointer');
    }
})
```

Which certainly makes the subscription code look cleaner.