To allow more complex shutdown operations than are possible from
within a sginal handler, there is now a shutdown helper thread that
does all the work.  The thread waits for a shutdown message to be sent
from uinet_shutdown().  The shutdown thread and uinet_shutdown() use a
new thread-and-signal-handler-safe UHI facility for sending and
waiting on messages.

The netmap interface now cleanly stops the transmit and receive
threads during detach.  This resolves a concurrency issue that existed
when the receive thread was still running while detach was performing
the netmap ring cleanup workaround.