Called every 16 minutes to pull a new version of the schedule

def _pull_schedule_loop(self):
        """ Called every 16 minutes to pull a new version of the schedule """
        try:
            self.pull_schedule()
            delay = 16*60
        except ScheduleError, e:
            self.l.exception("ScheduleError while pulling schedule.  "+
                             "Retrying in 5m")
            delay = 5*60
        if not self.running:
            return
        self.scheduler.plan(time.time() + delay, self._pull_schedule_loop)