Previously:
https://listman.redhat.com/archives/libguestfs/2021-February/msg00087.html
Version 1 had a rather serious bug where it under-evicted pages
(because of shadowing of the variable 'n'). This fixes that problem.
Also I cleaned up the code by putting the cache work into separate
inline functions.
Rich.