MemCache: Initial API structure.

@davidfowl @GrabYourPitchforks @lodejard @DamianEdwards @yishaigalatzer 
It should just be about eviction order preference. There are benefits and costs to granularity.  If it's extremely granular then the user can completely override the expiration algorithm (size, TTL, etc.). However that means the implementation would have to keep everything strictly ordered rather than just bucketed, which could hurt add & remove performance.

I think Int is too much granularity. 3-5 levels would probably be enough. Levi?