Make <webview> use out-of-process iframe architecture.

This is behind --site-per-process flag.

This is the first step to make <webview> --site-per-process
compatible, only basic features work: rendering, input,
navigation, executeScript and postMessage.

This CL makes <webview> BrowserPlugin free, so <webview>
is not a plugin to blink anymore, rather it's similar to iframe.
Therefore, this CL makes <webview> work without BrowserPlugin
or BrowserPluginGuest/BrowserPluginEmbedder.
We still need to use the old browser/ counterparts (BPG and BPE)
because we use it for 1) Guest related decision making
in WebContents, so WebContentsImpl::browser_plugin_guest() is
still used and useful, 2) Initializing and attaching logic
inside content/, e.g. BPG::InitInternal(), BPG::OnWillAttachComplete.
In subsequent CLs, these dependencies will be either removed if not
required, or extracted to a separate class.

TBR=jochen@chromium.org for testing/buildbot/chromium.fyi.json
BUG=330264

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

Cr-Commit-Position: refs/heads/master@{#336565}
30 files changed