Handle JSON-based BotoServerError body strings well

Hey there,

The current master handles XML error responses well. It fills the BotoServerError object quite nicely. But when JSON is returned, the JSON is just dumped into self.error_message.

I created a function _parseJSONBody(self, body) that handles this JSON. It works, for example, when CloudFormation tells you that your template parameters are invalid. Now the returned BotoServerError is consistent with other cases.

Please apply to master.

Best,

Allard