Merge pull request #89 from JustAddWires/DMap

Added I2C bus error detection and handling.
Digital I/O support for Gen1.
Wire.requestFrom() now returns the expected value.
Added Gen1/Gen2 recognition, and configuration of the correct attributes tables.
Added support for the CY8C9540A I/O Expander.
I2C now defaults to Standard Speed, but can be forced to High Speed on a per device basis (such as for the Gen2 I/O Expanders and PWM chip).
Fixed bug in code that reads back Legacy GPIO pin directions.
analogRead() for Gen1.