code: func CreateHTTPDownload(req HTTPTransferRequest) (Command, error) {
  	_, filename, err := req.parseRemoteLocation()
  	if err != nil {
  		return nil, trace.Wrap(err)
  	}
  
  	flags := Flags{
  		Target: []string{filename},
  	}
  
  	cfg := Config{
  		Flags:          flags,
  		User:           req.User,
  		ProgressWriter: req.Progress,
  		RemoteLocation: req.RemoteLocation,
  		FileSystem: &httpFileSystem{
  			writer: req.HTTPResponse,
  		},
  	}
  
  	cmd, err := CreateDownloadCommand(cfg)
  	if err != nil {
  		return nil, trace.Wrap(err)
  	}
  
  	return cmd, nil
  }
docs: // CreateHTTPDownload creates HTTP upload command