Use an external process to kill forked checks that time out instead of relying on timers in threads