Implement tx_push_handler() and tx_pop_handler().
Implement tx_write_through_impl().
Change tx_rollback() to use a safer method of restoring the context.
Identify new objects with the transaction they are created within.

This prevents unnecessary forking of new objects.
Surround key handling functions with transactions.
Test transaction rollback in main.
Propagate $v_rollback_type and $s_rollback_reason in tx_rollback().
Actually test rollback effects in $$h_die.
Document transactions in HACKING.
Remove "ephemeral_clone" member of symbol_header.

There are no longer plans to try to make ephemeral types transaction-safe. See
HACKING for a discussion of why.
Use rollback in FileBuffer instead of an error variable.