Modified to allow one ManagedDeviceServer to handle devices of more than one model.
This is done by making the deviceWrapper object a dict mapping device names to wrappers, and selecting the appropriate wrapper based on *IDN response