Get a GCEEnricher client.

    A factory function that validates configuration and returns an
    enricher client (:interface:`gordon.interfaces.IMessageHandler`)
    provider.

    Args:
        config (dict): Google Compute Engine API related configuration.
        metrics (obj): :interface:`IMetricRelay` implementation.
        kwargs (dict): Additional keyword arguments to pass to the
            enricher.
    Returns:
        A :class:`GCEEnricher` instance.

def get_enricher(config, metrics, **kwargs):
    """Get a GCEEnricher client.

    A factory function that validates configuration and returns an
    enricher client (:interface:`gordon.interfaces.IMessageHandler`)
    provider.

    Args:
        config (dict): Google Compute Engine API related configuration.
        metrics (obj): :interface:`IMetricRelay` implementation.
        kwargs (dict): Additional keyword arguments to pass to the
            enricher.
    Returns:
        A :class:`GCEEnricher` instance.
    """
    builder = enricher.GCEEnricherBuilder(
        config, metrics, **kwargs)
    return builder.build_enricher()