Add hard-coded 'branches' to commands, a-la LWC (/lwc admin forceowner <owner>) so that you can keep things in different command declarations rather that using if/elses or switches. This makes it incredibly easy to do complicated command trees.

With this, automatic usage messages have been improved to only show those that you have permission for, and if you don't have permission for any it will give a generic permission denied message.

Commands are now sorted based on the order in which they'll be matched. It goes from most complicated to least complicated. Branches first, sorted by length, then sorted by argument count, then sorted by ArgumentType (int, double, player, word, sentence)