Add `fcntl` bindings for FD_CLOEXEC

There's a lot of possible functionality in fcntl, but the big one missing from nodejs is controlling the CLOEXEC flag (close-on-exec). Without this, it's basically impossible to prevent (potentially security-sensitive) open file descriptors leaking into any child process.

This PR adds support for `fcntl`, but only as much as is required to control the `FD_CLOEXEC` flag.

I have not tried building or testing it on Windows.