Implement Prog::Flatten(), but don't wire it up yet.

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

Change-Id: Iaa2b88f78367da60ff602841dd33e3b1d7c81af4
Reviewed-on: https://code-review.googlesource.com/4292
Reviewed-by: Paul Wankadia <junyer@google.com>
2 files changed