Use a periodic timerfd

This saves the setup and teardown every 30 seconds.
Use signal USR1 & USR2 to force a refresh immediately