Implement explicit resource management support
Add parser/compiler/runtime support for throw expressions, using and await using
declarations, disposal stacks, dispose symbols, and SuppressedError handling.
Wire disposal cleanup through blocks, returns, breaks, continues, and for-of
loops, including async disposal paths and suppressed errors.
Also add DisposableStack and AsyncDisposableStack builtins, AsyncIterator helper
plumbing, and focused tests/spec coverage for resource management, suppression,
throw expressions, and async iterators.