Call Prog::Flatten(). Migrate the execution engines.

This is the second half of the changes required for "flattened"
bytecode. Which is to say, for Alt instruction elision.

Change-Id: I67869c5cc9cea22514e995d4c7f29f0f6c647fc0
Reviewed-on: https://code-review.googlesource.com/4315
Reviewed-by: Russ Cox <rsc@swtch.com>
9 files changed