Send AndroidOverlay routing token from WMPI to AVDA.

This CL makes WMPI mirror the CVV surface ID logic with routing
tokens for AndroidOverlay.  The routing token is sent to AVDA, which
does nothing with it.

This CL also splits the existing RequestSurfaceCB into two separate
callbacks.  RequestSurfaceCB remains unchanged, providing a CVV id.
This CL adds Request/Provide OverlayInfoCB to send the CVV id and/or
the routing token.  Most existing instances of R/P SurfaceCB are
now R/P OverlayInfoCB instead, since everything from AVDA up to WMPI
really wants whatever info it needs to create overlays.

BUG=719693
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel

Review-Url: https://codereview.chromium.org/2849043002
Cr-Commit-Position: refs/heads/master@{#472369}
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
index 0b981590..e55f0c0 100644
--- a/content/renderer/render_frame_impl.h
+++ b/content/renderer/render_frame_impl.h
@@ -1146,7 +1146,7 @@
 
   // Send |callback| our AndroidOverlay routing token when it arrives.  We may
   // call |callback| before returning.
-  void RequestOverlayRoutingToken(const media::RoutingTokenCallback& callback);
+  void RequestOverlayRoutingToken(media::RoutingTokenCallback callback);
 
   // Ask the host to send our AndroidOverlay routing token to us.
   void RequestOverlayRoutingTokenFromHost();