Adds functions to create buffers, calcalute buffer durations based on number of
samples and the sample rate and converting milliseconds to gst internal clock
time.
This also alows for the removal of all gst imports outside of mopidy.audio.
This is analogous to how the core actor sends events to the frontends. This
removes the audio actor's direct dependency on the core actor, which
conceptually is on a higher layer.
The frontends use the new core actor, while the core actor uses the backend.
This is a step towards supporting multiple backends, where the core actor will
coordinate the backends.
Covers first half of #171 which is simply an port of the functionality we used
to have. Second half is actually taking advantage of playbin2 with respect to EOT
handling etc.