I2C modification

This modifies the library for use with I2C communication. I suggest pulling it into a separate branch.