HWF4: Consistent indentation in I2C driver.
HWF4: Hopefully fix I2C lockups.

- Don't write to I2C_CR1 until START and STOP bits are automatically
  cleared, per a note in the reference manual.
- Busy waits in the I2C driver currently do not time out.  I intend to
  address this by implementing a watchdog timer driver.