This commit removes the org.JSON library where alternatives are already provided (Bungee & Bukkit provide Gson). This change was made to improve compatability with BungeeCord plugins and reduce file sizes.
This means big changes to the SubData API, which heavily relied on org.JSON. Now we submit our data through YAMLSection to be converted and sent over the network.
The last three commits were changes to the way Vanilla-Patch.jar is downloaded. For compatability reasons, the old system will remain in place for now.
SubServers.Bungee can now link servers to subdata clients via connection address and port number.
Since this still has the chance to fail, the `Name` field will appear if no servers were found this way, and will be used the same as before. SubCreator made servers will still have the `Name` value present and filled out for assurance.
This is how SubServers will implement the Validator API that I suggested. I had to make some assumptions though (like how I don't expect BungeeCord's api to have a setTabValidator() method).
/sub reload - can now perform soft reloads
/greload - still performs hard resets
Soft Reloads mean that SubServers will load new data from the config and attempt to merge it with what is already in memory.
This is good if you need to make some quick changes, since it will only stop servers if a major change has been made to them.
However, this has the potential to cause issues, which is why the Hard Reset will continue to be tied to bungeecord command.