Make sure we have one txdata object per tx we validate. That's required for parallel signature checking.
Make sure we have one txdata object per tx we validate. That's required for parallel signature checking.

Summary: In case of parallel validation, we need to make sure we have one txdata object per transaction being validated, or they may end up stepping on each other's toes.

Test Plan:
  make check

Enable parallel validation. invalidate block 000000000002f96388721eefe2f3246577636902a7d2c9034ffc9731b1a154cf and then reconsider it. it is accepted. Run the manipulation several times to make sure.

Reviewers: freetrader, sickpig, awemany, kyuupichan, #bitcoin_abc

Reviewed By: freetrader, #bitcoin_abc

Differential Revision: https://reviews.bitcoinabc.org/D286

ftrader-bitcoinabc/bitcoin-abc,cculianu/bitcoin-abc,ftrader-bitcoinabc/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,cculianu/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,cculianu/bitcoin-abc,cculianu/bitcoin-abc,ftrader-bitcoinabc/bitcoin-abc,ftrader-bitcoinabc/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,cculianu/bitcoin-abc,cculianu/bitcoin-abc,ftrader-bitcoinabc/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,ftrader-bitcoinabc/bitcoin-abc,cculianu/bitcoin-abc,ftrader-bitcoinabc/bitcoin-abc,ftrader-bitcoinabc/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,cculianu/bitcoin-abc,Bitcoin-ABC/bitcoin-abc,ftrader-bitcoinabc/bitcoin-abc,ftrader-bitcoinabc/bitcoin-abc