recursive version of variables_read

def all_state_variables_read(self):
        """ recursive version of variables_read
        """
        if self._all_state_variables_read is None:
            self._all_state_variables_read = self._explore_functions(
                lambda x: x.state_variables_read)
        return self._all_state_variables_read