Added xsource and xsink units

Added the output-only 'xsource' unit for use with a2_OpenSource() and
a2_SourceCallback(), and the input-only 'xsink' unit for use with
a2_OpenSink() and a2_SinkCallback().

Added streamtest.c, which captures some music using a voice with an
xsink unit, and then plays it back using a voice with an xsource unit,
both using the asynchronous stream API.

Closes #136.
Closes #137.
Voice killing logic

Still having some double free and segfaults, but they're tricky
to repeat. Are voices detached and unlinked as intended?