linux-pulseaudio: Use inline for small functions
linux-pulseaudio: Use interpolated system timing

Before it was giving timestamps based upon system time for each new
segment of audio data.  Also, it was subtracting pulse latency from the
audio timestamp, which seems like it was really meant for use with the
pulse audio time rather than system time.

Now, it uses interpolated system time for timestamps.  Every few hundred
milliseconds it will reset the current audio timestamp value to system
time (minus the duration of the packet), and then it will interpolate
that audio data until the next reset.  This should help ensure smooth
audio as well as ensure the audio is properly timed.