Work on #304 and #304 to read the stdout *stream*

Changed it from using `.on('data')` to using a PassThrough stream which does the job much better, but the readline demos don't work when they're doing anything special on stdout, like `.cursorTo`. WIP.
Fixed #303, #304 and #311.

We don't use pipe by default for stdio spawn, we look at how nodemon is being used, the either decide to use pipe or process.stdout/err. Then depending on whether nodemon is required, we then attach to the different stdout/err streams as required.
Revert package version away from RC to 1.0.16

Conflicts:
	package.json
1.0.17
push timeout to be longer