What I was getting at was that a `PreferenceSystem` does not necessarily need to pause events (and the `stateManager` instance doesn't). There's also no possibility of events being missed because:

```javascript
    var preferencesManager = new PreferencesBase.PreferencesSystem();
    preferencesManager.pauseChangeEvents();
```

Considering `PreferencesSystem` as an object in isolation, it feels funny to me to have it queue up events by default and requiring users of `PreferenceSystem` to explicitly `resumeChangeEvents`. It's only because of the way Brackets starts up right now that the events need to be paused. If we altered the startup sequence at some point, that need may go away.