New super implementation of GCM registration using a motherfucker BoundedExponentialBackOff and detecting app update