Added a whole stack of timers and extra conditionals around switching in and out of cooling mode. Also added an overshoot constant into the calculation for exiting cooling mode.