Ensure that transaction-open-p, *current-logical-transaction*, and *tran...

...saction-level* correctly reflect the state of the transaction (that is, closed) at the time that any abort or commit hooks run. Also add abort-logical-transaction and commit-logical-transaction methods (and documentation) for use with with-logical-transaction, where the user will not know whether the handle represents a savepoint or transaction.