def on(*args)
      # step: we use this entry point to build of a list of switches
      parse_option_switches(*args) do |option_name|
        switches[option_name] = true
      end
      # step: pass the request to the underlining gem
      parser.on(*args) do |x|
        yield x if block_given?
      end
    end
def on(*args)
      # step: we use this entry point to build of a list of switches
      parse_option_switches(*args) do |option_name|
        switches[option_name] = true
      end
      # step: pass the request to the underlining gem
      parser.on(*args) do |x|
        yield x if block_given?
      end
    end
on: is the standard means of adding a command line option to the parser. The method
 excepts OptParser format extracts some information for meta data reasons and passes the
 call down the OptParser lib