RawHid: check in hidapi to replace pjrc

This is more actively maintained and will hopefully work around
some of the USB issues on OSX.
hidapi: fix for export
RawHID: update all operating systems to hidapi
RawHID: strip out more unused code and simplify

There was a lot of weird code paths to deal with previous
threading issues that no longer exist. Remove these awkward
patterns.

Now there is a simple read and write thread that handle polling
data from and to the device.
RawHID: remove unused pjrc libraries
Uploader: use hidapi instead of pjrc
Uploader: do not duplicate define
Revert "BL: OSX can handle 20 ms delay"

This reverts commit c504e44dc36bd7b6885b5368e80f7e8452824968.
Revert "Common BL Add delay to bl_xfer_send_next_read_packet to test issue on OSX"

This reverts commit 10e3bd488213818f1302e376b8225be2360d6e53.
GCS/RawHID remove Linux/hidraw backend
GCS/RawHID added Linux/libusb backend
Merge pull request #1381 from peabody124/hidapi

Use HIDAPI instead of PJRC for HID