Moving distance/duration collection out of scheduler and into interface

This moves distance/duration to an input of the scheduler and fixes the scheduled task executor to use this. This PR also fixes the FIFO executor to provide a simple continuous patrolling service.