Add ability to cache returned values from a service provider