Client plugin changes to support third party authentication. 

This creates a TokenFetcher implementation that on the client that uses the webapp to direct the user to fetch a token and secret from the given token URL. If the URL requires interactive authentication, the webapp will open a tab/window for the user to authenticate. Once the webapp has a token and shared secret, it uses the callback to send it back to the authentication layer. 

This also glues the third party authentication method to the NegotiatingAuthenticator.

BUG=115899


Review URL: https://chromiumcodereview.appspot.com/12475020

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