Handle 400 Bad Request w/ JSON API Error format

Currently, a 400 due to a validation error will become a 500, due to convert_resource expecting a DRF data object.  This changes the behavior to wrap the error dictionary in a JSON API Error format.

Builds on previous merge request.
Once the parser is finished, so the `links` format will be automatically converted, then we can switch the tests over to match the JSON API format.

Until then, this works as we are really testing the errors.