Notes while working:

devices contains one record for each device from hw:0 to the highest number
 - it contains empty records for devices that have been removed since
	system boot.

each device record has at least three fields
	- device name (text)
	- bool true for USB device
	- number of subdevices
	- zero or more subdevice fields
		subdevice fields contain
		- sub device number (in case one gets skipped)
		- bool playback exists
		- pid of process using playback
		- bool capture exists
		- pid of process using capture
