parsing the gcm messages finally works. gotNewCode() is BROKEN