Changes based on feedback from schveiguy

  1. spawnProcess() no longer throws if a stream is invalid.
  2. spawnProcess() for Windows now has full support for Unicode
     in program name, arguments and environment variables.

I also added a unittest that covers using disk files for process stdIO.
version() cleanup
Fixed typos