Some questions that occured to me. By item:
1 - Define peer. Is this network reachability? If you mean human relationship then there are problems. Either I'm always at a known location (like a phone number) or I have to make myself available via some agent (like .Mac). The first suggests dyn-dns like functionality for everyone, the latter allows for platform lockin. Good for companies but bad for communication.
2 - Buddy list as elements of sets. Good idea.
6 - Rights associated with data are not practically viable because they are unenforceable. One can only enforce access to data. Regardless, the requirement that today must fuel tomorrow cannot be reasonably satisfied insofar as tomorrow is undefined. For example DRM in DVD players and so forth is fine by me. So long as it's not legislated. If one is concerned with restricting access to data, build a player that doesn't let it escape into the wild. Either the data is valuable enough that people accept the limitations of your player or they go elsewhere.
7 - Gateways to domains is not an issue. .5 of the issue is what you outline in 4. Common outputs and (not mentioned) common inputs. This allows for plugging in of new adapters able to translate across domains without requiring a priori knowledge of all domains. So, get bi-directional 4 then 7 naturally falls out.
I think the corrollary to the 7 is that the web browser is not network aware.
Good stuff, thanks.