What is the use-case for flagging the property as changed?

The only thing I can imagine is that you expect users to observe it? Maybe firing [sendEvent](http://emberjs.com/api/#method_sendEvent) with `Ember.sendEvent('matcherChanged', newMatcher)` or possibly even better using [trigger](http://emberjs.com/api/classes/Ember.Evented.html) is a less surprising way to do this.