Merge pull request #250 from unikent/feature/module-update-on-live

Feature/module update on live
Set no time to revalidation
Fixes to moduledata task

* added awarding institute to the index cache so it can be used by the module layer (which needs to know which institute is awarding the programme)
* temporarily disabled module generation on pushing a programme to live, because it breaks the live backend. (The live backend cannot talk to the demo web service.)
* fixed potentially missing parameters in the module data task
Fixed institution bug

I have removed the institution code section for now as it *seems* that the codes don't apply to SDS data. Need to confirm this with Angela regarding whether the institution data in the backend is accurate
Ensure cache settings are public.
Set Cache-Control max-age to an hour.
Do not HTTPS redirect for /api/
Make match not like hats.
Ensure we have a redirect on rules.
There is no need for this conditional block.
However, we need it for routing through for HTTP.
Additional changes to Cache-Control
Refactor how headers are set and set cache policy
fixed bug with clearing api-output cache for each course
fixed typo in moduledata task
removed temporary fixes to add in new module session field
Merge pull request #256 from unikent/refactor/correct-nginx-caching-problem

Correct Caching For Nginx
Added provision for using a module_session field in the programme to set the session in the web service call
Use direct accessors for attribute/relation grabbing in programmes feed API generator.

Time for cleared caches -> full output finalised
Before:
9406
9344
9358

After:
5048
5067
5122
Directly grab internal attributes array to save on logic we don't need when generating simple data caches.