code: func manuallyProcessArgs(args []string) ([]string, []string) {
  	known := []string{}
  	unknown := []string{}
  	kvargs := []string{"--host", "--kube-context", "--home", "--tiller-namespace"}
  	knownArg := func(a string) bool {
  		for _, pre := range kvargs {
  			if strings.HasPrefix(a, pre+"=") {
  				return true
  			}
  		}
  		return false
  	}
  	for i := 0; i < len(args); i++ {
  		switch a := args[i]; a {
  		case "--debug":
  			known = append(known, a)
  		case "--host", "--kube-context", "--home", "--tiller-namespace":
  			known = append(known, a, args[i+1])
  			i++
  		default:
  			if knownArg(a) {
  				known = append(known, a)
  				continue
  			}
  			unknown = append(unknown, a)
  		}
  	}
  	return known, unknown
  }
docs: // manuallyProcessArgs processes an arg array, removing special args.
  //
  // Returns two sets of args: known and unknown (in that order)