Reworked timers code

Moved calculation into a discrete function. 

These changes are completely untested and must be paired with the corresponding updated client.config.json