Implement SOCK_CLOEXEC flag to socket()
Allow creating a socket with the close-on-exec flag set as it is added to the process file table. This prevents the race between socket() and fcntl(..., F_SETFD, FD_CLOEXEC). This is implemented on Linux and Solaris 11.
The implementation is non-obvious in that it bastardizes the "type" argument to socket and bitwise-inclusive-OR's a flag onto it. But as software is written that uses it, we might as well support it.