raop: Resume smoother for correct latency calculation

When a state transits to PA_SINK_RUNNING, the previous state could be
PA_SINK_IDLE. The previous code failed to resume smoother in such a case.
Failure to resume smoother led to calculate wrong latency in sink_get_latency(),
because pa_smoother_get() returned a garbage value.

In fact, it is safe to call pa_smoother_resume() regardless of the current
smoother suspension state. It checks the suspension state and does nothing
if already resumed.

This patch always resumes smoother at PA_SINK_RUNNING, so that
sink_get_latency() caluculates correct (or at least, somewhat reasonable)
latency values.
raop: Set precise wake up timer for rtpoll

Due to timer precision limitation, poll(2) may sleep longer or shorter
than originally specified. Therefore it is not safe to always specify
the fixed sleep interval for poll(2) (pa_rtpoll_set_timer_relative())
when executing some periodic tasks that are sensitive to precise timing.

This patch calculates when the thread should wake up to transmit
the next audio packet, and try to amortize the jitter caused by the
actual poll sleep duration.

This patch eliminates the audio glitch issue in Pioneer VSX-43 (and
possibly in other devices as well).