Use an HttpResponseBadRequest to return HTTP error

Even with status=400 we were seeing 200 responses coming back from
nested module updating. Everywhere else we use HttpResponseBadRequest
to indicate a 400.

Fixes #264
Increase size of other_notes field

This limit was somewhat abitrary and was included to deter people
from writing too much.

However, people want to write more. Increase the limit.
Merge pull request #266 from alphagov/increase-text-field-size

Increase size of other_notes field
Merge pull request #265 from alphagov/bugfix/bad-request-on-nested-module-error

Use an HttpResponseBadRequest to return HTTP error
Endpoint to get the dashboards using a dataset

When we are building notification emails we need to know what dashboards
the dataset that is out of date is used in, such that we can provide a
slightly more human friendly message tot the end user.
Define a thing as a constant

It’s used as a constant, so define it as such.
Merge pull request #267 from alphagov/feature/dashboards-for-dataset

Endpoint to get the dashboards using a dataset
Merge pull request #269 from alphagov/idiomatic-python

Define a thing as a constant
Fix thread-safety issue in stagecraft

Django middleware is not thread-safe. We should store this context on
the request object instance.

Django always calls `process_response`, but it is possible that
`process_request` has been skipped. So we have a guard checking that
it’s safe to log the response time.

See https://docs.djangoproject.com/en/1.7/topics/http/middleware/#process_request
Merge pull request #268 from alphagov/bugfix/thread-safety

Fix thread-safety issue in stagecraft
Allow cross-origin resource sharing on dashboards

The public dashboard endpoint should allow requests from everywhere,
for example the performanceplatform-big-screen-view.
Merge pull request #271 from alphagov/cors-dashboard

Allow cross-origin resource sharing on dashboards
Migration to add parent_id to Module model
Data migration to add 'section' module type
Enable retrieval of dashboard with nested modules
Enable writing of dashboard with nested modules
Move error build so as to identify failing module
Refactor
Extend spotlightify to support nested modules