utility to combine PaymentTransactionInfoPlugins

Maybe the pull request can be simplified to hide internal changes that aren't interesting after the fact
I'm confused. If `t3` is a `PaymentTransactionInfoPlugin` and you are calling `.test1`, that means the method `test1` needs to exist in `PaymentTransactionInfoPlugin` (it doesn't).