Add Google Analytics support

PS2: add custom dimensions and override app-name & app-version
PS3: report unified version name (branch + milestone-X|nightly|unofficial)
PS4-6: further reporting changes
PS7: add back own stats reporting

Change-Id: Ieb69944ba0e67cbaddb0e94c1b87fc99510bdd36
Squashed Stats commits from CM

Remove the notification on boot. Users are thinking they need to opt out to get rid of the notification.
The setting to opt-out still exists in the Settings app.
If the user does not opt out within 'tFrame' time (1 day), the checkin service will now run; prior
to this, the checkin service would not run until the next reboot. That next reboot could occur within a
few minutes (startup crash, which then automatically checks in before the user has a chance to opt out)
or even the possibility of never. This is unpredictable and buggy.
Change the checkin frequency from 7 days to 1 day.

CMStats: fix up the logic and potential sync failures

Clean up CMStats code.

Besides the cleanup, make sure to wait a bit between retries if upload fails for whatever reason.

Change-Id: Ib83e35bab2dc3d643751f032f810569dc71cafcc
Merge remote-tracking branch 'upstream/jb-mr1' into jb-mr1