config production cache store, dalli
cache sidebar
fragment cache for tags
use javascript and cache to optimise mission index page
properly expire sidebar cache
expire sidebar cache after preference changes
fix cache bug when current user course is not present
fix student can't access submission due to scope problem