Internal certifier for kwargs passed to Certifiable public methods.

    :param callable certifier:
        The certifier to use
    :param str name:
        The name of the kwargs
    :param object value:
        The value of the kwarg.
    :param bool required:
        Is the param required. Default=False.
    :raises CertifierParamError:
        A parameter failed internal certification.

def certify_parameter(certifier, name, value, kwargs=None):
    """
    Internal certifier for kwargs passed to Certifiable public methods.

    :param callable certifier:
        The certifier to use
    :param str name:
        The name of the kwargs
    :param object value:
        The value of the kwarg.
    :param bool required:
        Is the param required. Default=False.
    :raises CertifierParamError:
        A parameter failed internal certification.
    """
    try:
        certifier(value, **kwargs or {})
    except CertifierError as err:
        six.raise_from(
            CertifierParamError(
                name,
                value,
            ),
            err)