why: Previous version was based on lru_cache which is ugly. This module is based on the stew/keyed_queue library module. other: There are still some other modules rely on lru_cache which should be removed.