Fix bizarre ms_to_ticks behavior

The integers overflow when you pass ms_to_ticks more than 53
milliseconds. Floating point arithmetic fixes this. Alternatively
uint64's could be used
hack fix timer