Added a swappable time provider
Capacity and eviction