first hub comit
raw_send and raw_recv is not flagged as abstract method
Support for USB and USBTMC instruments using pyusb
New lantz shell

The new Lantz shell aims to be a command line shell to test communication
with devices by providing list, open, close, send, recv and query commands.
It currently implements a subshell for Visa and USBTMC.
Deprecates lantz-visa-shell

Deprecates by integrating the lantz-visa-shell
initialize_many and finalize_many, and GUI support

This commit provides helper function for initialization and finalization
of an iterable of drivers. It also provides a helper function to simplify
the process of creating responsive GUI for initialization.

The function support dependencies between drivers (i.e. some driver(s) must
be initialized before another) and concurrency (drivers can be initialized
together)
Merged USB Branch
Merge initialize_many branch