2 - clarify the documentation on how to configure a backend
3 - due to stacked evals, certain start up errors were quietly
4 ignored until the first cache hit. These start up errors
5 now correctly manifest themselves at start up time.
7 - change base class order to appease Class::C3
13 - Be more compatible with ->set() convention of passing expiry
16 - Pass around a hash ref instead of a list of kvp.