Linked the validator to the flask web server.

Changed the validation routine to allow a tree to be validated, with the topmost elements
(version and meta-type) now specified in the flask routings, allowing these to drive the
validation more straightfowardly.

Introduced the concept of a RequestContext, which contains all necessary details to
validate and execute a user request.  This is different to a task context, which is the
contextual information (potentially supplied by the user) which will be used to complete
the request (i.e. task context is a subset of request context).

The functions and data used to perform the validation and execution have been split out
from the rest of the validation code, a separation to be formalised via AWS S3 code storage
and retrieval in future.