Great idea! Was thinking about this time to time for about a year or so... :) Not sure right now about free time for such project but would love to see some progress and maybe contribute.
I think you can look at swarm.js
http://swarmjs.github.io/
And torrent networks
https://webtorrent.io/
One more thing is private networks behind symmetric nat. If it's server less network we need some technique to predict/penetrate open ports for this nodes.