New token cache model

I wanted to him finer control, but updated per your comment.