add support for windows daemonization

We need this because MCI has poor support for running processes in the background. It would be much better to just start a new process, write a pid, and kill it at the end.
This is the parent process exiting so I don't think we wan to delete the pid here. How would we kill the child later?