Restructured the project save data folder layout when the engine starts.
The XMLData class now creates directories if they are missing. Individual classes no longer need to check if a path is valid before saving.
Filenames are now automatically generated and no longer assigned by developers. This change has been made across all classes that are savable which required some changing of the Save() method arguments.
Some classes have some protection in place now in the event the class attempts to load a property that does not exist in the save file.
CommandSystem instances now use their instanced CommandCollection property instead of the static class property.
CharacterRole class created with helper static methods for converting strings to their correct CharacterRoles enum value.
Environment class has save/load support however Realms/Zones/Rooms do not yet.