code: func runAsNewCommand(cmd CommandRunner, mode string) {
  	execCmd, ok := cmd.(ExecRunner)
  	if !ok {
  		panic(fmt.Sprintf("%v does not implement ExecRunner", mode))
  	}
  	cmdPath, err := execCmd.LookPath()
  	if err != nil {
  		Errorf("Error: %v\n", err)
  		Exit(2)
  	}
  	allArgs := shiftFlags(mode)
  	if err := runExec(cmdPath, allArgs, newCopyEnv()); err != nil {
  		panic(fmt.Sprintf("running %v should have ended with an os.Exit, and not leave us with that error: %v", cmdPath, err))
  	}
  }
docs: // runAsNewCommand runs the executable specified by cmd's LookPath, which means
  // cmd must implement the ExecRunner interface. The executable must be a binary of
  // a program that runs Main.