Implement a mojo backed InputRouterImpl.

InputRouterImpl implements the InputRouter interface but with the
browser->renderer side channel backed by mojo. It still implements
a Chrome IPC channel for the renderer->browser communications but I
will remove that code in the future.

A large portion of this change InputRouterImpl is merely taken from
the LegacyInputRouterImpl and code is adapted to use mojo. Likewise
with input_router_impl_uniitest.cc

BUG=722928
[email protected]

Change-Id: If0ecaa9b76c4f574ce4dd0a54bdfb6af7722cc28
Reviewed-on: https://chromium-review.googlesource.com/571947
Commit-Queue: Dave Tapuska <[email protected]>
Reviewed-by: Alexandre Elias <[email protected]>
Cr-Commit-Position: refs/heads/master@{#489003}
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
index d4feeb87..5214233 100644
--- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn
@@ -1146,6 +1146,8 @@
     "renderer_host/input/input_router_client.h",
     "renderer_host/input/input_router_config_helper.cc",
     "renderer_host/input/input_router_config_helper.h",
+    "renderer_host/input/input_router_impl.cc",
+    "renderer_host/input/input_router_impl.h",
     "renderer_host/input/legacy_input_router_impl.cc",
     "renderer_host/input/legacy_input_router_impl.h",
     "renderer_host/input/legacy_ipc_widget_input_handler.cc",