wrapper class for computationally-expensive functions called with the same arguments often