Creates an VSGSuite instance from a filename.

        :param str filename:  The fully qualified path to the VSG configuration file.
        :param str type:  The configuration type to generate.
        :param kwargs:  List of additional keyworded arguments to be passed into the VSGSuite.

def from_directory(cls, directory, type, **kwargs):
        """
        Creates an VSGSuite instance from a filename.

        :param str filename:  The fully qualified path to the VSG configuration file.
        :param str type:  The configuration type to generate.
        :param kwargs:  List of additional keyworded arguments to be passed into the VSGSuite.
        """
        # Resolve the suite class from the type
        suite_class = entrypoint('vsgen.suites', type)

        # Merge the default and any additional, maybe override, params.
        params = {
            'root': os.path.abspath(directory),
            'name': os.path.basename(os.path.abspath(directory))
        }
        params.update({k: v for k, v in kwargs.items() if v is not None})
        return suite_class(**params)