I've looked around and found a bunch of threads on installing functions in missions, but none seem to answer the question of how to get around the initialization order problem.
Although (I believe) the obvious way to add a function from a mission folder is to include an execVM line for its file in the init.sqf, but init fields are executed before the init.sqf.
So is there a way to deal with this?