First part improvements of PR #2420

First part improvements of PR #2420:
Mainly includes:
 - expiration cleanup improvements
 - map store & expiration/eviction relations
 - adding an upper bound to WBQs
What happens if two keys have the exact same hashcode? What's the worst case scenario?