[DIAL] added an in-browser DIAL mrp skeleton for DIAL sink query

dial_media_sink_service:
  - Added Register/UnregisterOnSinkQueryUpdatedCallback()
  - Start/StopObservingMediaSinks() takes std::string media_source as parameter

dial_media_sink_service_impl:
  - Do not check app availability for discovery only devices

media_router_desktop:
  - Initialize DialMediaRouteProvider if DialSinkQueryEnabled()

media_router_mojo_impl:
  - Use extension MRP to create/terminate route for DIAL sink

dial_media_route_provider:
  - Register OnSinkQueryUpdatedCallback with dial_media_sink_service

Bug: 779892
Change-Id: Iddc760c4fa035c00210480f28de7db96e42fe61c
Reviewed-on: https://chromium-review.googlesource.com/903419
Commit-Queue: Bin Zhao <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Reviewed-by: Derek Cheng <[email protected]>
Reviewed-by: mark a. foltz <[email protected]>
Cr-Commit-Position: refs/heads/master@{#543872}
26 files changed