Added in optimization for only wanted the first device attached. There is a weird bug in libusb that isn't respecting the libusb_context and will turn on debug logging with no way to turn it off if you use libusb_get_device_list() and libusb_open() rather than just libusb_open_device_with_vid_pid().