Working I2C master code, verified on logic analyzer.  Starting bus protocol layer on top of the i2c hardware layer using continuations to allow for asynchronous message construction and processing via the task_manager