Moving away replacement algorithm independent code

also adding a new function to access the cache. It is not ok to access
the algorithm function directly…
Reporting evictions on the LRU algorithm
Adding the reuse distance calculation

Still need a good way of reporting it…