Actually what I'm working towards is much like what jvincent is asking for:
"students need to be able to self-teach using online dynamic material (as opposed to static textbooks). Teachers would design courses from mashups and assist students individually in their progress"
Mine would be an interface for designing and delivering those "mashups".
I plan to release much of it on an MIT (or equivalent) license, so if you're a python/django coder you can contribute code to it. Otherwise, your feedback would be great, once I have something to show you - you can get in touch with me through the link in my profile.