This patch series adds a description to all transactions and stores them in .hg/undo.desc where the rollback command can find them. It also adds a -n/--dry-run argument to rollback so the user can preview the changes that will be un-done.