Make ChromeSigninClient a BrowserContextKeyedService

This CL moves ChromeSigninClient from being created in SigninManagerFactory and
owned by SigninManager into being a BCKS. The motivation is that other core
Signin classes (e.g., *ProfileOAuth2TokenService) will need access to the
SigninClient instance as well. ChromeSigninClient being a BCKS enables such
access, as the respective factories can simply get the ChromeSigninClient
instance from the ChromeSigninClientFactory in order to pass it in to the core
classes that are being created.

BUG=350710
R=rogerta@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255951 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 255951
Revert 253735 "Always broadcast one last "tab not blocked" notif..."

> Always broadcast one last "tab not blocked" notification before closing a tab.
> 
> BUG=336386
> TEST=as in bug
> 
> Review URL: https://codereview.chromium.org/132103005

TBR=avi@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255952 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 255952