senoko: Run MCU at 36 MHz off PLL

Prior to this, SW was set to take the clock from the 8 MHz HSI.  Change
it to come off of the 36 MHz PLL.
STM32: I2Cv1: Add I2C slave support

This patch adds support for having the STM32 act as an I2C slave.
os: hal: Add I2C slave support

This adds general support for behaving like an I2C slave device.
LLD: I2Cv1: Fixup i2c lld stuff
hal: i2c: Fixup i2c
senoko: Almost finished with the rewrite

We almost have parity with the previous version.
senoko: Port code from V1, fix I2C races

We now properly handle both I2C master and slave mode.