JSON.parse can throw

Since JSON.parse can throw it needs to be wrapped in a try catch so the error can be passed back in the callback.
Merge pull request #1 from generalhenry/patch-1

JSON.parse can throw