Bugfix for multiple K4W or 1473 devices needing keep_alive. 

Opening by PID fails when multiple identical devices are on the system ( i.e.: if there are two Kinect 1473 libusb_open_device_with_vid_pid has no way to know which audio device to open. 

This PR uses the newer `libusb_get_parent` and `lib_usb_get_bus_number` to get the correct audio device for a camera. 

PR is backwards compatible with older versions of libusb so it only applies the newer method if libusb >= 1.0.18 is detected. At a later date we can assume 1.0.18 or higher and remove the keep_alive.c files. 

Signed-off-by: Theodore Watson <theo@openframeworks.cc> (ofTheo)