Exceptions part #1: misc support changes
Exceptions part #2: AST and CFG support
Exceptions part #3: irgen
Exceptions part #4: runtime support

There's still vestiges of the libunwind experiment; I'm leaving those in even
though they're dead since I think we should move soon back to that approach.