Introduce ExtensionHostDelegate, use it for media access requests

As part of the app_shell/extensions refactoring project we're trying to move
ExtensionHost to src/extensions.

* Break ExtensionHost's dependency on chrome/browser/media by delegating out
  media access requests. Some extension background pages do make these requests
  e.g. the Chromecast extension.
* Also use it for tab creation requests.
* Now that there are 5 methods delegated out of ExtensionHost introduce
  ExtensionHostDelegate to implement them and reduce the size of the
  ExtensionsBrowserClient interface.

BUG=321341
TEST=browser_tests *Extension* and *Media*

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257915 0039d316-1c4b-4281-b951-d872f2087c98
14 files changed