I just picked up a notebook at Bartel's in which I hope to draw out some high level designs for this system from a technology perspective.
It was recently pointed out in a comment that users don't care about underlying technology, they care about how easy the system is to use. iTunes was cited as an example of something that "just works" whether you understand the underlying tecnology or not. This is a good point, and I think one of the reasons that so many open source projects are not as successful (measured in popularity) as they could be. Many are very solid technical implementations of a feature set, but are so difficult to install and configure, that only the hardcore end up using them. That's not the kind of software I would like to create.