def set_power(state)
      level = case state
      when :on
        1
      when :off
        0
      else
        raise ArgumentError.new("Must pass in either :on or :off")
      end
      send_message(Protocol::Device::SetPower.new(level: level))
      self
    end
def set_power(state)
      level = case state
      when :on
        1
      when :off
        0
      else
        raise ArgumentError.new("Must pass in either :on or :off")
      end
      send_message(Protocol::Device::SetPower.new(level: level))
      self
    end
Attempts to set the power state to `state` asynchronously.
 This method cannot guarantee the message was received.
 @param state [:on, :off]
 @return [Light, LightCollection] self for chaining