There isnt much more to add. Is it possible to build a torrent client using only HTML and JavaScript. You can not use things like Java, ActiveX, NaCl... If yes, please give a high level description.
I dont have much knowledge about front end dev, but I think websockets will be able to do the networking (is it possible to connect one client to another without having all data go through a server?). I know that you cant write files using JavaScript so I think the file thats being downloaded will either have to be saved completely in the memory, or the client will have to use one of the new APIs in HTML5 for storing content.
No. It's not.
This is because the WebSocket specification falls outside of HTML5 and JavaScript ;-) That being said, opening up the question to "using features supported natively in [progressive/upcoming] browsers" then...
...still no :-)
This is because WebSocket requires a special handshake to setup with restrictions. It's not a free-for-all open-TCP-fest. The approach would require either
clients to be modified to accept WebSocket requests (as well as dealing with any cross-site access issues)
or, more realistically, a server to bounce through