unix: don't swap stdin file descriptors

Bug introduced in 47f496a. It turns out the file descriptors of the
stdin pipe don't have to be swapped around.
unix: clean up code in process.c
unix: set closed fd to -1, avoid double close bugs

* abort() if close() fails
* set fd to -1 after close() to prevent double close bugs
Revert "unix: improve uv_guess_handle() implementation"

This reverts commit 98bcddc8dddb4b85425d846f546e81e8ccf633f8.

It's making a lot of tests in the node.js test suite fail.