Adding awaitable value factory methods to Cache.GetOrAdd methods.  Needs some D.R.Y. refactoring yet