Fix for broken stop_child

There are three important bits here:

* unsigned types in ei++.h make date calculations actually work with negative numbers.

* check_children reuses stop_child to end processes that have gone on beyond their deadline.

* the internal kill function ensures that kill(-1, ...) will not be called, which is a fairly bad thing to have happen.