Okay, so, the hierarchy is partially refactored. I'm definitely getting a lot of mileage with fixing broken assets by having them serializing as text files instead of binaries (since the assets still store everything properly but the script GUID, it is trivial to open up the asset and paste the proper GUID into place, and everything automagically fixes itself after that. I am pushing because I just fixed a small bug I'd introduced where some depreciated Eat This Input Rawr function in Console was performing the function of nabbing arrow key input. No doubt there's a fine and dandy way around using that function but I'm not solving it right now. One of the most irritating things right now is how OCMap really ought to be a few different files. But seeing as it's not, i'm not going to do a big refactoring/fixing of it. My main job is just to organize everything in a more useful way for the future; not to try and fix everything. As a result I'm also getting better insight into the code structure, which ought to help me figure out where I'm going to need to put some of these listeners for the unittests and so forth.