I unfortunately got a bit stuck with this(*) and haven't worked on it lately. The plan is to continue with working on it, though. It did get to a quite interesting stage, after all.
(*) For example, I couldn't quite figure out the ideal way to implement the time varying parameter envelopes for this. I didn't want to do the most obvious thing and designing and implementing something more comprehensive turned out to be more involved than expected.