Indentation is a mixture of tabs and spaces which confused webide. So tidied this up.
Unfortunately this is hard for diff to handle, so the changes appear as big blocks of code
being removed and other blocks being added.

CharLCDPlate.py Added more routines - ToggleCursor(), blink(), ToggleBlink(),
   read4bits(), readBF()
In particular implemented Reading BF and Address and ReadingRAM
Implemented  waitBFlow() which can replace a time delay
Tidied up comments for many of the routines, as they did not accurately
reflect what they do.

MCP230xx.py
  Fixed some bugs
    config(self, pin, mode) did not maintain a 16bit record of the I/O state of
         of the pins.
    input(self, pin, check=True)
         fixed to return either 0 or 1 rather then 0 or various non-zero values
         added parameter which defaults to previous rountine, but allows asserstion
                to be skipped - to enable experimenting reading 'output' pins

     Removed orphaned code after return in output(self, pin, value)
     All the low level rountines readU8, readS8 etc. where indented so they were
        sub function of input and no used there, and inaccessible in the class
        Moved indentation and modified may to use the i2c routines more efficiently.