code: def register_download_command(self, download_func):
          
          description = "Download the contents of a remote remote project to a local folder."
          download_parser = self.subparsers.add_parser('download', description=description)
          add_project_name_or_id_arg(download_parser, help_text_suffix="download")
          _add_folder_positional_arg(download_parser)
          include_or_exclude = download_parser.add_mutually_exclusive_group(required=False)
          _add_include_arg(include_or_exclude)
          _add_exclude_arg(include_or_exclude)
          download_parser.set_defaults(func=download_func)
docs: Add 'download' command for downloading a project to a directory.
          For non empty directories it will download remote files replacing local files.
          :param download_func: function to run when user choses this option