Clean up.
Fix #7459.

Keep track of the measurements of the same name: assign them different ids, but
report them under the same name. All the measurements are now PerfMeasurement
objects.
Fix JSHint error.
Corrected dutch translation

'Map openen' is a bit confusing with either creating a folder or opening one.
Fix #9528
Update comment accordingly
Update zh_CN translations
Updated Italian translation: fixed grammar errors

Fixed a couple grammar error with the impersonal form and the number of "installare" and improved a couple of other translations
Better console logs for some errors:
- Improved error reporting for swallowed exceptions in ProjectModel, AppInit,
FileTreeView (show stack and actual exception message)
- Clearer error message when extensions fail to load due to requiring a
non-existent module

Additional small cleanups:
- Fix ThemeSettings dropdown change listener so it is properly specific
- Docs improvements for tree & working set decorators
- Several other docs tweaks
First pass at a new event system:
- EventDispatcher utility for adding on()/off()/trigger() APIs to any object.
Currently still backed by jQuery events under the hood. But catches exceptions
a *little* better (no more handlers get the event, but code after the trigger()
call still gets to run, at least).
- $() wrapper for legacy support
- Catch deprecated events at on() time instead of dispatch time. More useful
stack, and simplifies DeprecationWarning code.

Initially used just for DocumentManager, Document module, & Document
instances.

Circular references mean that we can't safely assume any APIs, including the
new on() API, exist on modules like DocumentManager immediately after require()ing
them. So some event registration needed to move into htmlReady(). No one
should be dispatching events before then anyway.
* Reimplement new event system based on our own code instead of jQuery. Adds
better exception robustness, and should be faster & more memory-efficient.
makeEventDispatcher() can now be called safely on prototype objects.
* Add unit tests for new event system.
- 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
Fix disappearing Find In Files results
Update SPLITVIEW_ translation values
Update translation
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.
- Remove unused '$' JSLint annotations (Travis/JSHint complains)
- Finally actually mark Editor "keyEvent" as deprecated
- Fix one last case in JS code hints where $() was being used for non-DOM
events
- Fix cases where our code says 'jqEvent' but it's now an EventDispatcher
event instead
- To resolve circular dependency issues when attaching event listeners to
other modules, instead of waiting for htmlReady() (which doesn't work in
unit tests - see #9960) use a utility to safely attach listeners ahead of
the modules actually initializing
- Fix bug #9903 (ImageViewer file-rename listener leak)
- Log console errors if any core code tries to use $() on an EventDispatcher
adding in placeholder
Address review comments.