Split up SWCoreWindowController's logic.

This is the first part of #63:
* SWCoreWindowService now owns the application logic; hotkeys, display delay, the mechanics of actually raising/closing windows, and feeding/caring for the UI controller(s).
* SWCoreWindowController manages the UI using as inputs the window group list and a selection, and passes back selection/activation information from mouse events.
Explicit dependencies for the core window service
Merge branch 'develop' into numist/factor-core-logic-vs-UI-controller
Merge branch 'develop' into numist/63
Merge branch 'develop' into numist/63
Merge branch 'develop' into numist/63
Merge branch 'develop' into numist/63
Merge branch 'develop' into numist/63

Conflicts:
	Switch/SWCoreWindowController.m
I get upset about code duplication.
Review: Extra whitespace.
Merge pull request #75 from numist/numist/63

First phase of #63