A cache tag is used to make sure the cache remains consistent. In most cases the cache tag
will be the bean type, this makes sure queries associated with a certain reference type will
never contain conflicting data.
Why not use the cache tag as a key? Well
we need to make sure the cache contents fits the key (and key is based on the cache values).
Otherwise it would be possible to store two different result sets under the same key (the cache tag).
In previous versions you could only store one key-entry, I have changed this to
improve caching efficiency (issue #400).