transaction: add functionality to have multiple validators
This will help us in adding more validators which can aggregate data from
transaction and prompt user whether to commit the transaction or not.
The current target is to use this to implement `pull --confirm`.
Differential Revision: https://phab.mercurial-scm.org/D8198
BasedOnStyle: LLVM
IndentWidth: 8
UseTab: ForIndentation
BreakBeforeBraces: Linux
AllowShortIfStatementsOnASingleLine: false
IndentCaseLabels: false
AllowShortBlocksOnASingleLine: false
AllowShortFunctionsOnASingleLine: false
IncludeCategories:
- Regex: '^<'
Priority: 1
- Regex: '^"'
Priority: 2