Close signal_lock_pipe FDs on unload

If libuv is being dynamically loaded (and unloaded) as a module, the
global initialization routines actually run multiple times. This allows
the FDs to be closed when the library is unloaded.

(I've signed the CLA already)