Refactor MimeHandlerViewContainer to use with cross-process version

MimeHandlerViewContainer implements the renderer side of logic for
embedding the MimeHandlerView extension. The logic is currently based
on a GuestViewContainer which internally uses a WebPlugin
(BrowserPlugin).

MimeHandlerView will eventually get implemented on top of cross-process
frames architecture; requiring its owner container class on the
embedder side.

This CL will extract the common code between the current BrowserPlugin
version and the forthcoming frame-based version into a base class so
that the similar code between the two containers is not duplicated.

The common code includes a) logic in creating MimeHandlerViewGuest,
b) support for network service and c) support for post message.

Bug: 659750
Change-Id: Iabe44b1438fc22aa052b1ebf6d8696bdca00d0c9
Reviewed-on: https://chromium-review.googlesource.com/1170564
Reviewed-by: James MacLean <wjmaclean@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Reviewed-by: Ehsan Karamad <ekaramad@chromium.org>
Commit-Queue: Ehsan Karamad <ekaramad@chromium.org>
Cr-Commit-Position: refs/heads/master@{#582504}
6 files changed