Cacheing is one of those things that are simple at first but can get really
messy quick.
There's even a quote about it.
> There are only two hard things in Computer Science: cache invalidation and
naming things – Phil Karlton
The story goes like this.
1. You start off with one