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.
build: fix host/target arch detection

Setting the target_arch without setting the host_arch as well was
effectively broken.
linux: only pack struct uv__epoll_event on x86_64

On i386, it does not need packing; it's 12 bytes packed or unpacked.

On ARM, it's actively harmful: the struct is 12 bytes when packed and
16 bytes when unpacked.