Disease  extent generation transaction bug

Ensure that DiseaseGroup object in transaction cache when generating a disease extent, as it will be saved to update the "last_extent_generation_date".

Four possible scenarios:
* Manual disease extent generation (new transactional in PublicSite AdminDiseaseGroupController)
* Manual model run request (new transactional in PublicSite AdminDiseaseGroupController)
* Automatic model run request (already transactional in DataManager ModelRunManager)
* Automatic disease extent generation  (already transactional in ModelOutputHandler DiseaseExtentGenerationHandler)

2 potential solutions (see each commit). **For discussion**.