Initial version of nodejs integration

Consider having run receiving a callback (named done()) that is called instead of self.startReadingInput(). It should be more familiar pattern to nodejs developers (same as the async moca unittest completion pattern).