def on(*flags, **config, &block)
      desc   = flags.pop unless flags.last.start_with?('-')
      config = self.config.merge(config)
      klass  = Slop.string_to_option_class(config[:type].to_s)
      option = klass.new(flags, desc, config, &block)

      add_option option
    end
def on(*flags, **config, &block)
      desc   = flags.pop unless flags.last.start_with?('-')
      config = self.config.merge(config)
      klass  = Slop.string_to_option_class(config[:type].to_s)
      option = klass.new(flags, desc, config, &block)

      add_option option
    end
Add a new option. This method is an alias for adding a NullOption
 (i.e an option with an ignored return value).

 Example:

   opts = Slop.parse do |o|
     o.on '--version' do
       puts Slop::VERSION
     end
   end

   opts.to_hash #=> {}

 Returns the newly created Option subclass.