Refactor: Untangle Mac's ExclusiveAccessContext from BrowserWindow

This is a pure refactor CL. One problem: BrowserWindowCocoa (and views'
BrowserView) multiply-inherit from BrowserWindow and
ExclusiveAccessContext. BW and EAC declare some of the same methods, so
it gets weird. Let's fix that.

Then, toolkit-views has the "simplified fullscreen UI" implemented. It
works fine on Mac, but BrowserWindowCocoa has lots of dependencies and
we don't want to add more.

Instead, start by decoupling Mac's ExclusiveAccessContext implementation
from BrowserWindowCocoa into its own class, ExclusiveAccessController.
This wraps and manages the ephemeral fullscreen bubble window which, for
Cocoa, is a ExclusiveAccessBubbleWindowController.

A follow-up CL will allow ExclusiveAccessController to pick between a
Cocoa bubble and a toolkit-views bubble at runtime.

BUG=352425

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

Cr-Commit-Position: refs/heads/master@{#373125}
23 files changed