Refactor to decouple timer ticks from milliseconds.