Resource use decreased, accuracy increased.

Ensures that checking loop is entered exactly on a minute change.
Checking for whether we're at an update minute only happens once a
minute. Once we're at an update minute we just sleep for 'interval'
minutes between each ping.