Switch to bus based event system

The original idea I had was to connect devices to recipes via sensors
and controllers. After some thought, it's much more flexible to simply
place all the devices on a "bus" and have them emit events when things
change, and consume events to change their state.
Move logging to a recipe
Prevent bad logging.
Slightly more flexible formatting
Extensive protocol reworking and bug fixes
Disable debugging