components: Create web_modal component.

Notable changes:
 * Move WebContentsModalDialog related classes into components/web_modal/
 * Use namespace web_modal
 * Move the logic for sending the Chrome IPC message out of
   WebContentsModalDialogManager, and into ChromeModalDialogManager.
   Have Browser and ShellWindow subclass ChromeModalDialogManager,
   instead of directly from WebContentsModalDialogManager, to be able
   to send the IPC.
 * Introduce WebContentsModalDialogManagerDelegate::IsWebContentsVisibile.
   This is necessary to remove the dependency on platform_util.

BUG=241278
R=ben@chromium.org, wittman@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200448 0039d316-1c4b-4281-b951-d872f2087c98
86 files changed