TODO - drop (defer) all acceleration support
Cosmetic.
Added assertion to avoid timer queue loops.
Implemented constant velocity moves only.
dequeue_timeout() now returns success/failure.
Bug fixed where over 256 bytes of input crashed serial driver.
Reversed the sense of the Y motor direction pin.
queue_length() now reports the number of entries, not the number of bytes.
Defined the enqueue_move action.
Removed unused include file fw_assert.h.
stdout was busy-waiting after '\n' character.  That was bad because serial
reporting is done from soft interrupt.
Rewritten scheduler only does constant velocity moves, but it works!
Removed maybe_start_engine().  It is no longer used.