Ensure async terminates when time limit is not divisible by 5

Because async_wrapper subtracts 5 from time_limit and checks for
equality to zero, values not divisible by 5 will go negative and
continue forever.
Merge pull request #4806 from willthames/async_not_multiple_of_5

Ensure async terminates when time limit is not divisible by 5