Save the model configuration to a YAML-formatted file.

        :param filename:
            The filename to save the model configuration to.

        :type filename:
            str

        :param clobber: [optional]
            Clobber the filename if it already exists.

        :type clobber:
            bool

        :returns:
            True

        :raises:
            IOError

def save(self, filename, clobber=False, **kwargs):
        """
        Save the model configuration to a YAML-formatted file.

        :param filename:
            The filename to save the model configuration to.

        :type filename:
            str

        :param clobber: [optional]
            Clobber the filename if it already exists.

        :type clobber:
            bool

        :returns:
            True

        :raises:
            IOError
        """

        if os.path.exists(filename) and not clobber:
            raise IOError("filename {} already exists".format(filename))

        kwds = {
            "allow_unicode": True, 
            "default_flow_style": False
        }
        kwds.update(kwargs)
        with open(filename, "w+") as fp:
            yaml.safe_dump(self._configuration, stream=fp, **kwds)
        return True