add avm2 exception handler support to assembler
* mark beginning and end of active range with :%dlabel
* mark beginning of exception handler with
(:%exception handler-name start-label end-label type-name variable-name)
where type-name is name of type to catch, defaults to *
and variable is name of slot for :new-catch using this exception block
* on entry to exception block, thrown object is on top of stack
replacing any previous stack contents before the :throw
* (optional, i think?) create a catch object/scope with
(:new-catch handler-name). currently only works after corresponding
:%exception instruction, since it doesn't go back and resolve unknown
exception labels after assembly
* somewhere within the dynamic extent of an exception block, push
something on the stack, and call (:throw)