Move VerifySignature to BaseSignatureChecker and use it for OP_CHECKDATASIG
Summary: This ensure that we also benefit from signature caching facilities provided by CachingTransactionSignatureChecker.
Test Plan:
make check ./test/functional/test_runner.py --extended
Reviewers: #bitcoin_abc, jasonbcox
Reviewed By: #bitcoin_abc, jasonbcox
Subscribers: jasonbcox, teamcity
Differential Revision: https://reviews.bitcoinabc.org/D1666