Implement flexible matching of PortAudio device names.

This solves the problem with randomly changing ALSA device numbers and other unnecessary details.
Such details are removed and the device finding logic (now moved to portaudio.hpp) takes care of
of matching and forming unique yet robust names. Needs testing, though.