'Sets the class to use when the base class is instantiated.
Keyword arguments will be saved and added to the arguments passed
to the constructor.  This can be used to set global defaults for
some parameters.'

@classmethod
def configure(cls, impl, **kwargs):

    base = cls.configurable_base()
    if isinstance(impl, (unicode_type, bytes)):
        impl = import_object(impl)
    if ((impl is not None) and (not issubclass(impl, cls))):
        raise ValueError(('Invalid    subclass    of    %s' % cls))
    base.__impl_class = impl
    base.__impl_kwargs = kwargs
