Add a defaultCost property to TMMemoryCache

Defaults to 0 to preserve existing behavior. Setting to 1 lets you use costLimit to implement a simple count limit. Useful when using TMCache since it doesn't let you specify cost when setting objects.