node.js implementation

NOTE: branched off my previous "some-improvements" branch.