Introduce chrome.displaySource API

This patch introduces the 'chrome.displaySource' API including the idl file and the permission string and feature.

The patch also provides bindings code and the implementation delegate interface for the 'getAvailableSinks', 'requestAuthentication' methods and for the 'onSinksUpdated' event.
The API tests are included.

The API proposal doc: https://docs.google.com/document/d/1svs0p_b6KAIiBrKjaORsA2D8Pd84u8ksnTCfubYVVWA

BUG=242107

Review URL: https://codereview.chromium.org/1410093008

Cr-Commit-Position: refs/heads/master@{#360299}
diff --git a/extensions/browser/extension_function_histogram_value.h b/extensions/browser/extension_function_histogram_value.h
index 1faed63..7820b7f5 100644
--- a/extensions/browser/extension_function_histogram_value.h
+++ b/extensions/browser/extension_function_histogram_value.h
@@ -1156,6 +1156,8 @@
   SETTINGSPRIVATE_SETDEFAULTZOOMPERCENTFUNCTION,
   BLUETOOTHPRIVATE_CONNECT,
   BLUETOOTHPRIVATE_FORGETDEVICE,
+  DISPLAYSOURCE_GETAVAILABLESINKS,
+  DISPLAYSOURCE_REQUESTAUTHENTICATION,
   // Last entry: Add new entries above, then run:
   // python tools/metrics/histograms/update_extension_histograms.py
   ENUM_BOUNDARY