A nicer JSON.parse() with convenient error handling.