Patches waveform synthesizer close method

Patches the WaveformSynthesizer's close method such that it may safely
be called when the synthesizer has not been correctly opened. This is
particularly necessary when the previous call to the open method did not
complete successfully (i.e. threw an exception).
Makes audio output selection more user-friendly

Moves audio output device selection from the command line to the
graphical user interface.