lru-halfexpired (npm): lru cache but get supports a fill callback
Keywords: lru|cache|preemptive