Improved on error handling for SMBMAN and USBHDFSD.
Additional notes for USBHDFSD:
I have tried to make it strictly comply with the USB Bulk-Only Transport specification, so that it won't hang when dealing with malfunctioning devices.
Each device will now have an I/O semaphore assigned to it, so as to save CPU time by not needing to allocate one for every USB transaction.