[#75970906] Add view to create a new dashboard

Add an endpoint to Stagecraft to allow a user to create a dashboard
with a POST request.
Move is_uuid to validation library

It needs to be used by the dashboard app
Handle dashboard failure modes

Also introduces a govuk signon test decorator.
Extend JSON serialiser to use serialize() method

If an object is a UUID, return a string representation of it.

If the object still can't be serialised, call its serialize() method.
This is useful when nesting Link models inside dashboards, for
example.
WIP: serialize a dashboard
Store links when creating a dashboard

When a user POSTs an array of links, store them on the dashboard
model.
Respond to duplicate dashboard slugs with a 400

Standardise errors from the dashboard endpoint by always returning
JSON.