common: add subprocess support for Windows
common: add subprocess support for Windows

Add a Windows port for the subprocess handling.  This is fairly brittle,
does not perform job control (which means runaway processes potentially
on interrupt), and does not perform the proper handling for Unicode.
However, the logic is complex enough that adding in an additional
encoding conversion for the initial version may not be the wisest idea.
Subsequent passes could clean up the implementation.

bazelbuild/rules_swift,bazelbuild/rules_swift