However, with any library that you simply require in your node.js app, there is a certain amount of boilerplate code and HTTP stuff that you have to deal with before writing your remotely accessible functions and application code. With Joint, we were trying to figure out the most minimal way to whip up a single page web app that does some real-time stuff. We think that not exposing protocol/header stuff makes programming this stuff a little more fun.
Also see the responses regarding DNode.