Add support for UUIDs in domains.
Reorganize MySQL region DB and added BoneCP as a dependency.
Fix NPE when a manager fails to load.
Add migrations for region MySQL support.
Implement UUID saving/loading support for regions.

Also fix WORLDGUARD-3117.
Close connections properly in MySQLDatabaseImpl.chooseWorldId().
Add support for UUIDs in region commands.
Re-configure how libraries are shaded.
Show name: for legacy names in region domains.
Remove both UUID and names from domains for removal commands.
Switch to Odeum for executors.
Make some dependencies optional=true.
Add task management and improve threaded code.
Disable Flyway validation on migration.
Implement UUID migration.
Fix shutdown guard not working.
Remove /wg cancelall because it doesn't entirely work yet.
Save YAML regions database to a temporary file before renaming.
Update for dependency package rename.
Rewrite region API. Migrations need to be re-implemented.

This commit, however, adds:

* Better support for background saves and loads.
* Periodical writes of region changes rather than explicit save() calls.
* Rewrite of the MySQL region code.
* Support for partial saves when using MySQL.
* Decoupling of region index implementations and RegionManager.

What still needs to be done includes:

* Background region modification operations (addmember, etc.).
* Unit tests to verify correctness of the partial saving.
* Migration support (to be re-added).
* Better handling when regions are failing to save.
* Testing of the /rg load and /rg save commands.
* Verification of how server shutdown / world unload is handled.
* Verification that thread-unsafe concurrent saves of data is not happening.