Node.js support

Supports both printing to stdout with colorisation as well as printing to local file.

As with the sys implementation I don't close the write stream as there doesn't seem to be an event to detect when the printer is removed.

Taking work from #6 but moving over to use FilePrinter instead of LogPrinter.