[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.
I generally don't like making APIs explicitly be ok with passing an invalid value.  Null is the easiest value in the world to pass by accident, so it's usually better to fail fast in the case like this rather than silently letting it slide.

Do we know which cases on this branch call this with null on purpose?  Or could this be masking a bug somewhere?