[#651] Improve data summarisation accuracy and caching

* Perform batch summarisation after processing all responses
* Cache the summarisation items during processing
* Cache items like question information that will be used by multiple instances during a round of processing
Thats up for debate.  The moment we visualise them at the moment (pie chart, bar chart etc), it doesn't make sense to count them.