make S3 caching significantly more generic

Builds further on #11869. Should it much easier to cache Jekyll, once we figure out that very odd grunt-jekyll issue.