def enable(thing = true)
      instrument(:enable) do |payload|
        adapter.add self

        gate = gate_for(thing)
        wrapped_thing = gate.wrap(thing)
        payload[:gate_name] = gate.name
        payload[:thing] = wrapped_thing

        adapter.enable self, gate, wrapped_thing
      end
    end
def enable(thing = true)
      instrument(:enable) do |payload|
        adapter.add self

        gate = gate_for(thing)
        wrapped_thing = gate.wrap(thing)
        payload[:gate_name] = gate.name
        payload[:thing] = wrapped_thing

        adapter.enable self, gate, wrapped_thing
      end
    end
Internal: Initializes a new feature instance.

 name - The Symbol or String name of the feature.
 adapter - The adapter that will be used to store details about this feature.

 options - The Hash of options.
           :instrumenter - What to use to instrument all the things.

 Public: Enable this feature for something.

 Returns the result of Adapter#enable.