Refactor PageCacheMonitor and add pin/unpin methods