fix definition of __debugbreak() so if (1) __debugbreak(); else blah(); works as expected
StreamOutput: render to buffer on stack, only invoke new() if stack buffer is too small. Allows printf from ISR context in some cases
HeapRing: add some sanity checks
Conveyor: add some sanity checks
Block: only call Conveyor::on_blocK_end ONCE!
Block: don't update trapezoids, and return correct exit speed if block is currently executing