SI-7181 Eliminate unnecessary duplication of finally blocks

The main body of a try and each exception handler were getting a copy of
the finally block for the "normal" flow case (i.e. where they don't
throw an uncaught exception or use "return" to exit early). But that's
not necessary.

With this commit the try body and each exception handler can all jump
to the same copy of the finally block on a normal exit.

A byte code test is included to ensure we're getting fewer copies of
the finally block.

inline-ex-handlers.check is updated because the icode is a bit different
without the extra finally block copies.