Re-enable prerender RemovingLink browser tests.

The tests have changed significantly since they were first disabled. Add a
WaitForStop or two for good measure, but leave them as-is for the most part.
They can be disabled again if they still flake. Merge their custom prerender
loader into the main one; it's mostly the same.

In addition, for better test coverage, add a new test which asserts on events
received when a <link rel=prerender> is added for an existing prerender after
that prerender has loaded. Significantly rework the prerender events logic
to allow the test framework to wait on an event being received in the loader.

BUG=167340, 128841

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251495 0039d316-1c4b-4281-b951-d872f2087c98
[GCM] Unregistration request

Wrapper over URL fetcher allowing for making request to remove registration of apps from the GCM. It pretends to be an API call instead of GCM client infrastructure code on purpose, to omit certain server side logic.

Patch includes:
* Implementation of the request using a URL fetcher with delete request
* Parsing of the response, with error handling
* triggering of the retry logic based on the provided backoff policy and when the last error allows to retry
* UMA logging of the request result.

BUG=284553

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251496 0039d316-1c4b-4281-b951-d872f2087c98
Fix threading of certificate cache clearing.

The previous instance assumed it was on IO thread. There's also no
handle to IO thread from the Java layer. Introduce another helper in
chrome/ layer which can redirect to IOThread.

BUG=341500
TBR=klobag

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

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