* Improve handling of NPC names, fixes#1640
Moves the logic to a Util method (instead of duplicated in each module), and adds the "prefixColors" portions (replacing just a static 'RESET' code).
If colors and effects are combined, using only the most recent effect is sufficient (eg reapplying bold) as that should produce effectively no change while still having a color code stuck into the name as is needed to break NPCs looking like real players internally.
* Additional NPC name improvement: fix color code splliting
a name consisting of a color code followed by 15 letters would get split in the middle of the color code, rather than around it. This fixes that.
Some misplaced code unintentionally caused chunks to load in the middle of the startup sequence (after NPCs refused to spawn in the chunk, but before the server was fully started), meaning any chunk that normally loads within a few seconds of startup would be loaded already at that time, meaning a chunk load event never fires, and thus any NPCs at that location simply don't spawn in until the chunk is allowed to naturally unload and is later loaded again.
* Fix npc skin -t argument order
Command input is doc'd as (and should function as) data then signature, but the called method was signature then data... update calls it in correct order. Also, fixes doc to indicate that a name is valid input, not just uuid (not entirely sure how that is handled when sent out in a packet, but it seems to be correct to feed a name)
* Ensure rename command will handle scoreboard changes
Always update prefix/suffix, not just only when team is newly created
Guarantee removal entity from scoreboard team on remove
Also removes a fileheader screwup (first line changed in 1_12_R1 file)
Also removes non-used code bits (the two coloredName lines - they don't actually functionally do anything)
Also removes a duplicated data get call
* patch gamemode command
Uppercase + unique permission node
* patch for names of length 30