The timers can be destroyed while the timer actions are still running,
and when the action calls isc_event_free() it can assert, because it's
trying to access the destroyed timer object.
Prior to destroying the timers, first disable them, then a short grace
period before destroying them.
Closes #5228
Merge branch '5228-task-unit-test-fix-9.18' into 'bind-9.18'
See merge request isc-projects/bind9!10352