driver pigcs: handle errors better with IPBusAccesser

Now handle timeouts when connecting, and when a connection is already established.
Should also be optimised by not reading one character at a time.