ao_wasapi0: Fix loading device by ID string

For some reason, IMMDeviceEnumerator::GetDevice wasn't liking
MultiByteToWideChar strings. Do a manual string search through the
enumeration, then get the ID string (again), then load with that
string. Makes loading devices by ID string work.

Also refactor the device search/load into a separate function.
ao_wasapi0: Don't call exit() after enumerating devices

Return an error instead.
ao_wasapi0: Prefix enumeration messages with ao-wasapi: