¿Cómo diseñar subparsers orientados a objetos para argparse?

Problema

Estoy creando un administrador de paquetes que tiene muchos subcomandos. Preferiría tener una estructura de clase similar a la siguiente.

class ListCommand:
  def __init__(self):
    name = "list"
    alias = "ls"
    short_description = "A useful simple line that explains the command"

  def help(self):
    # Display help

  def command(self):
    # do stuff when command is called

¿Cómo escribo subparser para trabajar con algo como esto? Encontré unejemplo en línea que hace algo similar sin subparsers.

Respuestas a la pregunta(1)

Su respuesta a la pregunta