Adding Ghpsdr3 Server device shell and reference docs
Added Spectrum and Audio callback to support servers like ghpsdr3.  Updated may files because of changes to device_interfaces and calls to Initialize
Added pure virtual destructor to DeviceInterface so we can delete instances.  Removed unneeded data that's now in DeviceInterfaceBase
Changed cbProcessSpectrumIQ to cbProcessBandscope and pass 8bit spectrum values instead of IQ.  Implemented new callbacks in Receiver
Added ProducerConsumer to DeviceInterfaceBase and removed duplicate members from all devices
More movement of common device data to DeviceInterfaceBase
Moved cross platform structure packing macros to DeviceInterfaceBase
Moved USB init from constructor to Initialize so we're not loading it unless device is running
Moved usbUtil construction to Initialize so it's only set when device is running, not just constructed
Removed libftd2xx from .pro, no longer needed since its in pebblelib
Removed ftd2xx lib from .pro since included in pebblib
Init usbutil stuff moved to initialize
Removed redundant QT += widgets
WIP Ghpsdr3.  Not working, crashes on any debugger breakpoint, as do HPSDR, RFSpace, RTL.  All have network components.  Communicating with server ok, but audio data is not in sync