Reminds me of Opera Unite[0], where you could build services available externally in HTML and JavaScript. It even has NAT traversal. It never gained much traction, and I believe Opera no longer develops Unite.
If you re-read the early cyberpunk scifi from Gibson and Stephenson, one of the characteristics of their vision we're still missing is execution at the edges. There was a strong concept of "my virtual space" in which space owners control not just a visual presentation layer, but the full execution stack.
Our architectures are still dominated by central server farms, in which we give up our data and cede control to the server operators. There are few experiences where we have a true, decentralized experience with execution controlled by the clients. BitTorrent and it's predecessors are the closest we've come so far, but AFAIK it's all limited to peer to peer file transfer.
Every time I start to explore these thoughts, the browser is the obvious platform for the first iterations. I'm glad to see initial designs appearing, and look forward to seeing a truly decentralized and peer to peer service that don't have critical dependencies on central servers.
I've actually created something similar myself, that does support streaming and blob serving.
I haven't officially 'announced' it yet, as I was planning to make a nice drag and drop Chrome FileSytem API way of setting up a website and hadn't got around to it. So it's still fairly immature (although I think it supports most of what the linked system does).
I've designed it to run on heroku, and it sets up virtual hosts for each client. I have a lot of ideas for how this could be used, here's two: 1. using in browser encryption stream your location acquired by the geo location api from your mobile phone but only to your friends who have the right key or 2. any time you want to serve a large file to a bunch of friends, just fire up one of these servers on heroku (first process is free) and serve it...
I tried using this lib to make a self aware browser which can also serve requests to other browsers. but dropped it cause it didn't go well wit the sandbox model.
Also, when PeerConnection gets its Data api implemented this will be more literally possible. You could connect to someone with minimal routing from a server and then serve basically whatever peer to peer.
You know, your friends could share metadata among themselves and a webapp in your browser could provide you real time access to the files associated with that metadata when they [or their server] is online, etc.
Data API will use SCTP and not TCP so there are some considerations for implementing HTTP over SCTP based channel. Also it depends on what Congestion control the SCTP implements/enables.
There are also NAT traversal considerations which would make connection setup longer when compared to HTTP based infrastructure. Of course, as the underlying transport matures over time (or people build extensive libraries in JS to over come the deficiencies), we will see if data API will become larger than its current vision (of serving data in-band with multimedia)
PeerConnection API supports traditional NAT traversal mechanisms though there are a very, very, very small number of cases that can be handled by a privileged user that can't be emulated in the browser.
This reminds me of the excellent Firefox extension AllPeers from years ago that had this feature (along with some sort of p2p chat). I miss it sorely to this day.
[0]: http://unite.opera.com/overview/