use hashmap to speed up lru_cache

Current lru_cache impl. uses BatDllist.find to find an entry, which can be slow when there are many entries in the cache. This patch simply adds a hashmap to mitigate the problem.