Add new evsignal_add_with_flags() for signal events

By default libevent set SA_RESTART flag for sigaction(2), which will restart
syscall automatically, and this is not always good.
(That because it need to be compitable with signal(2), while it vary
across systems)

This patch add new function evsignal_add_with_flags(), which will change
this flag from default SA_RESTART to user defined.
Add detection of signalfd() for autoconf

We also need to do this for cmake.
signalfd: initial implementation
test/regress: disable signal_pipeloss with EVENT__HAVE_SIGNALFD
test/regress: add simplestsignal (with only one signal)

This will be useful for debug stage of signalfd() implementation.
Add nonblocking for signalfd()
test_simplestsignal: avoid double evsignal_del() for the same event.
evsig_cb(): cleanup: avoid mixing sfd/fd, and event_sock_warn() calling
Close signalfd socket at evsig_dealloc_()
Restoring handlers for signalfd() impl
Make signalfd() code more common with existed code-base.

Call signalfd() once, when we create a pipe for sigaction()/signal().
And after this patch simple simplest test passed.
Make an empty evsig_handler() in case of signalfd()
Avoid calling evsig_init_event_() twice
Restore only user-specified signal for signalfd()

Fix signal/signal_restore test
Convert warns to debug's messages in evsig_cb() for signalfd()
Block only user-specified signals (with libevent) for signalfd()

And now blocking is called when we adding signals, not when we
initialize it.
Convert evsig_info->sh into counter for signalfd()

Because we need to know whether we need to unblock signal or not.
Make counter of events for signals (using singalfd()) global
Don't malloc size in sh_old if it already allocated.

This will fix signal/signal_switchbase test for signalfd()
Detect signalfd() in cmake