Changed to interrupt timer instead of polling.

Doesn't work any better than last commit, unfortunately.
Somewhere the host is dropping readings or losing track of time.
Clients all stay in sync with each other (minus some jitter),
but host gradually offsets its own samples to output too soon.