'Determine if a feature is enabled.
For experiments, this induces a bucketing event by calling
self._is_experiment_enabled.'

def is_enabled(self, user=None, subreddit=None, subdomain=None, oauth_client=None):

    cfg = self.config
    kw = dict(user=user, subreddit=subreddit, subdomain=subdomain, oauth_client=oauth_client)
    if self._is_config_enabled(cfg, **kw):
        return True
    if self._is_percent_enabled(cfg, user=user):
        return True
    experiment = self.config.get('experiment')
    if self._is_config_enabled(experiment, **kw):
        return self._is_experiment_enabled(experiment, user=user)
    return False
