Support "cwd" and "chroot" being Stdio.File objects in Process.create_process() et al on plaforms that have fchdir(2).

It would be useful to be able to avoid filesystem-races in Process.create_process() by having it support stuff like:

  Stdio.File dirfd = Stdio.File(some_workdir, "r");
  ...
  Process.Process proc = Process.Process(({ "some", "command" }), ([ "cwd": dirfd ]));