Updated to give a useful error if an invalid subcommand is given