Initial PanelManager checkin:
- PanelManager provides APIs to create panels below the editor area. JSLint
and Find in Files now use these APIs.
- Move editor-holder ht calculations from EditorManager to PanelManager
- EditorManager listens to PanelManager for resize notifications. PanelManager
listens for window resize (moved from EditorManager) and for Resizer events
on all bottom panels. The old EditorManager.resizeEditor() API is still used
for edge cases such as status & search bar show/hide, extensions that add
fixed top panels, and extensions that don't use Resizer APIs to hide/show
panels.
- Since PanelManager is listening, Resizer no longer pings EditorManager
directly about show/hide/resize. Resizer emits events to notify PanelManager
about any panels it may have missed (legacy extensions that add panels via
Resizer instead of PanelManager).
- Add max-size support to Resizer in anticipation of PanelManager helping to
fix bug #2015.
Merge remote-tracking branch 'origin/master' into pflynn/panel-management

* origin/master:
  Safe file delete.
  Style textarea like input.
  Install jasmine-node as needed by the jasmine-node task.
  Add check for no "functions" returned (as requested by code review).
  bumped pathmatch color down a notch based on peterflynn's feedback
  Change how QuickEdit helper function is passed from CodeHints to QuickEdit:
  Made .quicksearch-pathmatch darker so that it's visible
  Remove fallback for missing helper function (just fail if it's missing). It should never be missing.
  Fixes for comments on push'ed code:
  Tweaks to make some test cases pass.
  Use tern jump-to-definition search for QuickEdit.
Fix part of #2015 by keeping panel resize limits up to date as other panels
resize or overall available `.content` height changes (window resize).
Change resizer min/max limits to operate in terms of panel outer height.
Code review: clarify docs, update panel id
* Fix unit tests by ensuring PanelManager is fully initialized before
createMockEditor() calls EditorManager.setEditorHolder() to inject mock DOM.
* Cleanup: move responsibility for setting editor-holder height from
EditorManager into PanelManager (cleaner division of labor).
Hoist out a util for creating a mock Editor given an already-created
document, so JS code hints unit tests can share SpecRunnerUtils' mock-Editor
creation code instead of duplicating it.
Merge pull request #3943 from adobe/pflynn/panel-management

Improved panel management - prevent resizing panels larger than available space