Fixes T7006. Currently if a Harbormaster build target runs for longer than 24 hours, it will be executed multiple times. This is because the taskmaster lease expires on the target worker task.
This provides build step implementations a mechanism to extend the task lease by a number of seconds; whileever build steps implementations are progressing they can increment the task lease time, while still ensuring that if the taskmaster encounters a fatal error the task will be picked up elsewhere.