io: Clear transfer timeout struct when transfer has no timeout
io: Clear transfer timeout struct when transfer has no timeout

Prior to this commit, a transfer that was submitted with a non-zero
timeout would retain this timeout if the transfer was resubmitted with
a zero (unlimited) timeout. This commit corrects this by clearing the
transfer's timeout if the desired timeout is zero.

Closes #332

Signed-off-by: Chris Dickens <12e2dfbb4b4ab7bea0edd05d4285db5b26efe685@gmail.com>

ButterflyNetwork/libusb,dickens/libusb,ButterflyNetwork/libusb,dmitrykos/libusb,ButterflyNetwork/libusb,leapmotion/libusb,jwrdegoede/libusbx,leapmotion/libusb,philemonf/libusb,philemonf/libusb,leapmotion/libusb,LudovicRousseau/libusb,dmitrykos/libusb,jwrdegoede/libusbx,libusb/libusb,libusb/libusb,dmitrykos/libusb,jwrdegoede/libusbx,dickens/libusb,libusb/libusb,LudovicRousseau/libusb,philemonf/libusb,philemonf/libusb,ButterflyNetwork/libusb,dmitrykos/libusb,LudovicRousseau/libusb,ButterflyNetwork/libusb,dickens/libusb