Would it makes sense to use the `MapChangeRecord` rather than the `values` ?

`_update` could probably get a little bit more efficient. Might be worse if the resulting code does not get too complex. (you might want to check https://github.com/angular/angular.dart/blob/master/lib/directive/ng_class.dart#L227)