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.