Holy crap! Refactor so that TaskRunner is smaller.