Refactoring AndroidKeyStore to support a KeyStore running in another process

This CL does a number of things:
1) Extracts an AndroidKeyStore interface which specifies the API needed by the
native OpenSSL engine from an AndroidKeyStore. Also changes from using
PrivateKey to AndroidPrivateKey to provide a layer of indirection needed for a
remote PrivateKey
2) Renames the previous AndroidKeyStore to AndroidKeyStoreLocalImpl as it's
used for interacting with an in-process Android KeyStore
3) Provides a new class AndroidKeyStoreRemoteImpl and corresponding
IAndroidKeyStoreRemote.aidl that together specify the interface and interaction
with a remote process managing an Android KeyStore
4) Alters the PKCS11-based authentication flow to only use out a remote Android
KeyStore
5) Adds a new method to the previous AndroidKeyStore interface to facilitate
clean up of remote keys

BUG=341500
CONTRIBUTOR=ppi@chromium.org
R=bulach@chromium.org, klobag@chromium.org
TBR=rsleevi
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251461 0039d316-1c4b-4281-b951-d872f2087c98
[GCM] Update backoff policy to be more conservative.

Just tweaking the backoff constants to better reflect what to do in case of
server error. Future patches will introduce alternative policies for different
kinds of errors.

BUG=284553

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251462 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 251462
Cast: added missing include in simple_event_subscriber.h.

Some build envs don't understand OVERRIDE without that header.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251463 0039d316-1c4b-4281-b951-d872f2087c98
[Chromoting] Break up JS event handler registration into related groups.

BUG=

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251464 0039d316-1c4b-4281-b951-d872f2087c98
Put all scan results in the media galleries scan result dialog.

Previously, only galleries of type scan results where added, now any gallery that has media file counts and the app doesn't have permission to is displayed.

BUG=161119

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251465 0039d316-1c4b-4281-b951-d872f2087c98
cc: Add an occlusion perf test with more than 1 opaque layer.

In this case add 10 layers. This roughly describes a complex chromeos
desktop environment I hope.

On an N4:
*RESULT occlusion_tracker_time: unoccluded_content_rect_fully_occluded= 13.10741901397705 us
*RESULT occlusion_tracker_time: unoccluded_content_rect_10_opaque_layers= 27.276884078979492 us

R=enne@chromium.org, enne
BUG=

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

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