Implemented IO::open_with_cloexec

Instead of using fcntl to set the cloexec flag, set it in open(2)
when possible.
Added specs for CAPI function rb_cloexec_open
Implemented CAPI function rb_cloexec_open