Changed the GlobalData global to be a pointer that gets explicitly instantiated rather than the incorrect instantiation that was there before which could result in memory corruption issues.
Tweaks to bring the code more into line with devkitPro.