Yeah, that seems to be the kind of folks who go for this, but I'll be the first to admit: Ignition is a pretty terrible environment to purely write software in.
The whole point is the layers of abstraction we provide that gloss over lots of it. If you're trying to redo it all in code, you're swimming upstream.
A primary part of the value proposition of Ignition (in comparison to just writing your own bespoke software, if you have the capacity to do so) is that if something is broken, it's IA's problem. The more you're reinventing in code, the more you're making it your problem again.
All that aside...
For the OP: You don't want to import someProjectLibrary or anything like that. It's a bad habit to get into for a variety of reasons, the most significant of which is a fairly catastrophic memory leak.
If you're careful, you can store persistent state via system.util.globals (or Phil's Toolkit modules' global var map), but it must be pure data, not arbitrary custom classes, which you can "rehydrate" into stateful classes if you want to encapsulate logic.
I'd also recommend reading through this topic which describes a related known issue that will not be fixed in 8.1 but is already fixed in 8.3: [IGN-6503]Project Library Script Initialization Races