register method
Registers command under its name and aliases.
Throws ArgumentError if a name/alias is already taken.
Implementation
void register(LocalCommand command) {
for (final key in [command.name, ...command.aliases]) {
if (_byName.containsKey(key)) {
throw ArgumentError.value(key, 'command', 'already registered');
}
_byName[key] = command;
}
}