Implement MimeHandlerViewFrameController

This CL implements the renderer side of MimeHandlerView based on
cross-process frames (behind a flag).

The new subclass of MimeHandlerViewContainerBase will use a content
frame inside a plugin element for loading the MimeHandlerViewGuest's
extension.

The current implementation is not complete and the missing features
such as postMessage support will be added in the follow-up CLs.

This CL also introduces a new class of parametric browser tests
(MimeHandlerViewCrossProcessTest) which will be the destination of
the current MimeHandlerViewTests as more features are integrated into
the frame-based version. The new test class runs the test on both
BrowserPlugin-based and cross-process-frame-based versions.

Document: https://docs.google.com/document/d/10g7Y9cprYKkch9JZ0TBUWaEnHBJT1nzhskQIt1nHbWM/edit#heading=h.qw81a2bk3v6w

Bug: 659750
TBR=thestig@chromium.org

Change-Id: Ia69aeed47f4fa1c7f5b81cdde71a8d8b5ff59165
Reviewed-on: https://chromium-review.googlesource.com/1187231
Commit-Queue: Ehsan Karamad <ekaramad@chromium.org>
Reviewed-by: Sam McNally <sammc@chromium.org>
Reviewed-by: Ehsan Karamad <ekaramad@chromium.org>
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Reviewed-by: Istiaque Ahmed <lazyboy@chromium.org>
Reviewed-by: James MacLean <wjmaclean@chromium.org>
Cr-Commit-Position: refs/heads/master@{#589284}
27 files changed