- Make EventDispatcher robust to concurrent mutation of event list
- Add one() support on EventDispatcher
- Add triggerWithArray() utility in EventDispatcher
- Fix bug in initial EventDispatcher conversion of EditorManager
Convert Brackets core code over to new EventDispatcher APIs for all non-DOM
events.
- Does NOT convert PreferencesSystem & PrefixedPreferencesSystem yet, since
they have existing impls of on()/off() with a different signature
- Several modules with circular references now must wait until htmlReady()
to register event handlers on other modules, since the other module is
initially empty (no on() API to call):
    - KeyBindingManager listeners on CommandManager
    - FileViewController listeners on MainViewManager
    - ProjectManager listeners on FileViewController & MainViewManager
- Removes legacy NodeConnection "." event separators, deprecated since 0.37
- Remove 'promises' member of "projectOpen" Event object, which was very old
and doesn't seem to have been used in a long time.
- Remove RecentProjects code that listens for events on SidebarView, since
it stopped triggering those events 2 years ago (in df7a4956). The
"beforeExecuteCommand" listener in PopUpManager covers the same case now.