Chain is now subclass of serial.Serial
Pointless to have an attribute of Chain be an instance of serial.Serial
Instead just have Chain(serial.Serial).
Added Pump.write method to simplify
Creation of Pump instance runs check to see if pump works
Handy to see if the pump is connected and switched on.
Raises exception if there's a problem.
Raise exception if no response to setdiameter
Changed mind that serialcon.close() was appropriate here
Pump.setflowrate now raises exceptions
Added read method
Saves having to check all the time that the len(response) > 0
Switched logging.error to raise PumpError
argparse commands now in try finally block
ensures serial port is always closed
Turned logging off by default
But enabled in the example
Tidied MightyMini class