Add ``@util.memoize``, and you can get rid of the ``member_caches`` stuff.