get rid of trailing null character

for some unknown reason, ifDescr value on windows systems is
null-terminated, while not hex-encoded.
ensure reproductible ordering
check concurrent daemon even if --no-fork is used
check before forking
log daemon starting even if --no-fork is used
check available tasks before daemonizing
no need to log non-execution twice
replace local signal handlers by a global one

On reception of any termination signal, the agent now runs exit() on the
current task, if any, and exit() on itself.
more debug messages