'True if configuration obj handles all options of this class.
Use this method rather than isinstance(obj, cls) to test if a
configuration object handles the options of cls (is_configuration
is handled specially for results of merge which may handle the options
of unrelated configuration classes).
Args:
obj: the object to test.'

@classmethod
def is_configuration(cls, obj):

    return (isinstance(obj, BaseConfiguration) and obj._is_configuration(cls))
