Posix spawn

posix_spawn() was meant to be used in the embedded world, as it requires
much less ressources to achieve its purpose.

In win32, fork() does not exist, and spawn() is quite limited. But we can emulate posix_spawn() much more easily than fork() with the CreateProcess() sys call as stated in MSDN.
 
> Use the Win32 API to create a pipe, then call AllocConsole, set the handle values in
> the startup structure, and call CreateProcess.