Get the configuration value from all overrides.

        Iterates over all overrides given to see if a value can be pulled
        out from them. It will convert each of these values to ensure they
        are the correct type.

        Args:
            overrides: A list of tuples where each tuple is a label and a
                dictionary representing a configuration.
            skip_environment: Skip looking through the environment.

        Returns:
            The converted configuration value.

        Raises:
            YapconfItemNotFound: If an item is required but could not be found
                in the configuration.
            YapconfItemError: If a possible value was found but the type
                cannot be determined.
            YapconfValueError: If a possible value is found but during
                conversion, an exception was raised.

def get_config_value(self, overrides, skip_environment=False):
        """Get the configuration value from all overrides.

        Iterates over all overrides given to see if a value can be pulled
        out from them. It will convert each of these values to ensure they
        are the correct type.

        Args:
            overrides: A list of tuples where each tuple is a label and a
                dictionary representing a configuration.
            skip_environment: Skip looking through the environment.

        Returns:
            The converted configuration value.

        Raises:
            YapconfItemNotFound: If an item is required but could not be found
                in the configuration.
            YapconfItemError: If a possible value was found but the type
                cannot be determined.
            YapconfValueError: If a possible value is found but during
                conversion, an exception was raised.

        """
        label, override, key = self._search_overrides(
            overrides, skip_environment
        )

        if override is None and self.default is None and self.required:
            raise YapconfItemNotFound(
                'Could not find config value for {0}'.format(self.fq_name),
                self
            )

        if override is None:
            self.logger.debug(
                'Config value not found for {0}, falling back to default.'
                .format(self.name)
            )
            value = self.default
        else:
            value = override[key]

        if value is None:
            return value

        converted_value = self.convert_config_value(value, label)
        self._validate_value(converted_value)
        return converted_value