caching for story viewing, using user roles as part of the cache key