Remove socket dependency

Sum up update_intervals and use this value as split second.
Example:
second = 4; update_interval = 0.25
interval 0: sub_secs = 0; 4 + 0; sub_secs = 0 + 0.25
interval 1: sub_secs = 0.25; 4 + 0.25; sub_secs = 0.25 + 0.25
interval 2: sub_secs = 0.5; 4 + 0.5; sub_secs = 0.5 + 0.25
interval 3: sub_secs = 0.75; 4 + 0.75; sub_secs = 0.75 + 0.25
interval 4: sub_secs = 0; ..
etc.
Improve arc function for seconds

Remove redundant computations and parenthesis.
Simplify wait condition

Weird and complex expression is not necessary here
Add special for 1 second intervals

Basically just tick through with a 1 second interval since
waiting/delaying here is futile.