support for decoding JSON responses

invalid JSON results in a 'response.body' of 'nil'