I've been thinking that, as far as roodylib is concerned, I should do with PreParse what I already did with library extension init and main calls. That is, I'd have PreParse check some kind of preparse object for children, running all applicable routine properties of each child it finds. This downside is that this would make PreParse irreplaceable, but I figure I'd provide a child-of-preparse class object to easily add new PreParse code. Alternately, authors can always stick their code in the player object's before routines for PreParse.
Again, this may seem like more obfuscation. The main thing is, I'd like to get library extensions to a point where all you have to do is include them (and don't have to add any calls to init, main, or PreParse).
If PreParse code order ends up being a problem, I guess I could add some kind of priority ranking thing. We'll see.