Use JSON API errors

We would like to return more useful, consistent, structured data to
clients. Testing out this approach for dashboards, as discussed.
Merge pull request #246 from alphagov/feature/dashboard-errors

Use JSON API errors
Allow PUTs containing modules to work correctly

When putting a list of modules, if they include an id, then update the
module with data from the PUT request.

Not yet implemented removing module as it is a separate story, but have
added a skipped test for this functionality
Merge pull request #247 from alphagov/allow-module-updates

Allow PUTs containing modules to work correctly
Switch to data_group and data_type in get response

Avoid exposing the data_set id in the api, as it is a numeric field
rather than a uuid, and we use data_group and data_type for creating
modules, and never require the id.