Im guessing its something to do with the fact that you never require GT::Config so $global is undefined apart from the new one you added.
I may be wrong but I didn't see:
require GT::Config;
OR
use GT::Config;
...anywhere
(Although it should spew an error).
I may be wrong but I didn't see:
require GT::Config;
OR
use GT::Config;
...anywhere
(Although it should spew an error).