def start
      register_storage
      opts = parse(ARGV)
      check_config(opts)
      command = Command.const_get(opts[:command].capitalize).new
      begin
        command.run(opts)
      rescue SystemExit
        # do nothing
      rescue Exception => e
        puts e.message
        exit(1)
      end
    end
def start
      register_storage
      opts = parse(ARGV)
      check_config(opts)
      command = Command.const_get(opts[:command].capitalize).new
      begin
        command.run(opts)
      rescue SystemExit
        # do nothing
      rescue Exception => e
        puts e.message
        exit(1)
      end
    end
Run the command line application to parse arguments and run sub-commands.
 Exits the process with a non-zero return code to indicate failure.

 Returns nothing.