In memory caching for .Net 3.5