[REVIEW_ONLY] Splitview

* This pr creates a split view of either side-by-side or upper-lower views of 2 different files.
* From the View Menu select "Split Vertically" or "Split Horizontally" to create a second pane. 
* Selecting the menu item again will collapse the panes down to a single pane (merging the two working sets and showing the current view)
* Selecting the opposing menu item will just reorient the views without disturbing the documents
* A blue outline currently denotes the active pane.  Functions such as opening a document, searching, etc... will target the active pane.  Functions like Close All will target both panes and close all documents.
* Lint will work on the currently focused editor
* Images are not supported and viewing images has been disabled in this build
* The UI as it works now is temporary.  A UI treatment story will come next with @larz0 UI treatments

Known Issue:
https://github.com/adobe/brackets/issues/8513#issuecomment-49796161
The selection is getting reworked with @larz0 UI treatment and will be addressed at that time

I encourage anyone who has cycles to test this.  Obviously this is a big change and needs quite a number of eyes on it.
When is this called with null on this branch?  Similar to my comment about `getDocumentForPath()`, I think it's bad practice to silently no-op when passed an arg that is obviously never correct.  If this is getting passed null sometimes, I'd much rather we track down why & fix it.