<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def reload (self, filename=None, data=None):
 """Reloads the a AIT configuration. The AIT configuration is automatically loaded when the AIT package is first imported. To replace the configuration, call reload() (defaults to the current config.filename) or reload(new_filename). """

        if data is None and filename is None:
            filename = self._filename

        self._config   = loadYAML(filename, data)
        self._filename = filename

        if self._config is not None:
            keys         = 'default', self._platform, self._hostname
            self._config = flatten(self._config, *keys)

            # on reload, if pathvars have not been set, we want to start
            # with the defaults, add the platform and hostname, and
            # merge in all of the information provided in the config
            if self._pathvars is None:
                self._pathvars = self.getDefaultPathVariables()

            expandConfigPaths(self._config, 
                            self._directory,
                            self._datetime,
                            merge(self._config, self._pathvars))

        else:
            self._config = { }