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