This cleans up and simplifies the API by passing the command name as the first argument. Previously the command name was specified explicitly, but was still included in the argv. (cherry picked from commit 056a43e1a615080cf9ba405be0538a6a979c821e)