Search for config file in a number of places.
        If there is no config file found, will return None.

        :param config_filename: Config file name or custom path to filename with config.
        :return: Path to the discovered config file or None.

def discover_config_path(self, config_filename: str) -> str:
        """
        Search for config file in a number of places.
        If there is no config file found, will return None.

        :param config_filename: Config file name or custom path to filename with config.
        :return: Path to the discovered config file or None.
        """

        if config_filename and os.path.isfile(config_filename):
            return config_filename

        for place in _common_places:
            config_path = os.path.join(place, config_filename)
            if os.path.isfile(config_path):
                return config_path

        return