Add return-type tracking to normalizeAsm/denormlizeAsm
Don't let buildFlowGraph return to a junction if it's known to be unreachable.
Teach buildFlowGraph about functions that are known to always throw.

It can treat calls to these functions like a jump to function exit,
allowing for more accurate tracking of dead junctions.
Handle non-breaking case bodies in switch statement.

These don't actually flow through to the next case, but we have to
make sure they're properly closed in order to keep our invariants
in order.
Simplify labelled-block handling so it works better with switch statements.