chore(libs/i2c): add I2C::Device class