mitigate child processes with 100% CPU and/or zombies

While this does not fix the cause for child processes looping
endlessly in read()/EGAIN, it will detect these loops and kill the
runaway processes automatically.  It also prevents zombies after
killing these child processes (which happened before when you killed
them manually).

- Fix the assumption that an unresponsive child process has died.
  Until now these processes were just 'forgotten', but now it is
  checked whether the process is unresponsive but still alive (e.g. in
  an endless loop) and if alive, the process is killed before it is
  'forgotten'.

- Fix the reaping of dead child processes.  Until now, only a single
  waitpid() call was issued, which only repead one process, even if
  there were multiple processes waiting to be reaped.  Now a loop is
  used and all potential zombies should be reaped properly.
rely on Irssi::pidwait_add() and don't reap anything manually

Switch to proposed 'variant 3':
Irssi::pidwait_add() already does a waitpid() for any child.
Manual calls to waitpid() and Irssi::pidwait_remove() should not be
necessary, so remove them altogether.

(I've grep(1)ed the irssi scripts directory on my Debian stable and
 none of the scripts (excepit twirssi :-) that calls pidwait_add()
 calls either pidwait_remove() or waitpid(), so this should work.)
Merge branch 'fix-runaway-childs'