try/catch parsing incoming JSON, requires consistent error handling

See lines 179 to 201 of change.