Common code was duplicating the command name and not shifting arguments properly, which thus required the builtins to be aware of it, instead of being treated like subcommands.