I suspect there is an issue with Exerelin holding onto previous data when loading a save/starting a new game having previously been in a game.
There is a singleton class (ExerelinData) that performs (among other things) the function that is now provided by PersistentData. There is also a static reference to the currently loaded SectorAPI to compare for catching the load/new game event. When loading/starting a new game for at least 1 frame the old game data will still be referenced, before the references are switched to the new loaded data.
I'm assuming that until that happens there are actually two copies of whatever data is referenced from ExerelinData (and so on down the tree, which could be a lot); one from the previous game via the ExerelinData instance, and one from the newly loaded game. Once the references in ExerelinData are updated and point at the new game data I assume the previous game data can be cleaned up.
So, I suspect (hope) that this can be fixed when I move Exerelin over to use PersistentData; I just need to actually do that
