Change destruction order of FocusController

Currently the FocusController is destroyed after the root
window. FocusController may use
DesktopNativeWidgetAura::content_window_. Since the FocusController is
destroyed after content_window_ it is entirely possible for
FocusController to attempt to use content_window_ after it's been
destroyed.

This patch destroys FocusController before the root.

BUG=314118
TEST=covered by test
R=ben@chromium.org

Review URL: https://codereview.chromium.org/148883003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247568 0039d316-1c4b-4281-b951-d872f2087c98
Apply automatic range checks to CC enum types across IPC.

This is part of a long-running background task to remove the remaining
uses of the unchecked IPC_ENUM_TRAITS() macro.

BUG=246708

Review URL: https://codereview.chromium.org/149033003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247569 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 247569