Avoid recursion in start_new_task().

We cannot use a recursive call of start_new_task(), because of Python's
recursion limit. I hit the limit with a directory that contained >2000
subdirectories with only one file in each (I accidentally backuped
/var/abs from the Archlinux ABS).