Enhances flexibility of synthesizer audio output

Allows the WaveformSynthesizer class to be initialized without an audio
output. An audio output will only be required when a WaveformSynthesizer
is opened, at which point that audio output will continue to be used
until the synthesizer is closed.