all debug input signals are now channels, and DebugLinkDecision handler
waits until the input was consumed. This means that the input events are
queued; originally, if an input event arrived before the previous was
consumed, the previous input would be lost.
reset words and their positions are now also channels, and
DebugLinkGetState can wait for their updates, if required
This separates the regeneration step from the build/install step.
This is to simplify bootstrapping: trezorlib is needed in several
build/test steps, and bound to be needed in more. It should be
usable and installable straight from the checkout.