[GCM] Track connection failures properly

This patch consolidates the reset logic and adds a reason for the reset,
for use in histograms. Additionally, connection uptime and overall success
rate are now tracked as well.

BUG=284553

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

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