timers: force timeout to signed int in enroll()

Closes #8618
If we decide to make changes according to my comments above, then negative and non-finite delays would have to be moved to the `invalidDelays` list.