plan.forget() clears the in-memory memoized cache for the plan and returns the cache dict
          prior to clearing.

def forget(self, node=None, cache_directory=None):
        '''
        plan.forget() clears the in-memory memoized cache for the plan and returns the cache dict
          prior to clearing.
        '''
        #plan.forget(node) clears only the cache for the given node (which may be a node name) and
        #  all nodes that depend on it; plan.forget(None) is equivalent to plan.forget()
        #plan.forget(node, cache_directory) additionally deletes all directories in the given cache
        #  directory that correspond to the nodes downstream of node. The node may be None to delete
        #  all relevant cache directories.
        m = self._memoized_data
        self._memoized_data = {}
        return m