The validator now uses loop callbacks to post its completion events. (A task is still used for the fetches.)