Windows: Fix broken WDK compilation

* void function call was returning a value
* introduced in 6d8dfe0aee41a3c7dd862c3de488df3ce452d86e
* also fix whitespaces
update .gitignore
Use timeout for sync_transfer_wait_for_completion
Fix logic error when backend handles timeouts
Purely cosmetic changes to distinguish itransfers from transfers consistently
Darwin supports LIBUSB_TRANSFER_ADD_ZERO_PACKET
Get the Device Descriptor without opening the device
Device Not Open differs from No Device; other error messages.
Stamp out segfaults

devs are different from dev_handles
libusb_open_extended()
libusb_get_kernel_driver_name()
Eliminate a reference to libusbx