more error checking

I noticed the `err` in `callback` is not really being used, and it makes my app crash if google is throttling. I added more error-handling & safer JSONing.