Re-land the experimental permissions API for extensions.

The permissions API lets extensions specify optional permissions in their manifest that they can request at run-time. It currently supports API permissions through a white-list. Host permissions will come later. This also fixes some clang errors from the previous attempt.

BUG=48119, 70466, 84507
TEST=*Extension*

Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=94288

Review URL: http://codereview.chromium.org/7432006

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