* Add support for testing against multiple Bitcoin Core versions, add
0.18.0 (oldest officially support for test suite) and 25.0 (latest
stable release). Previously we tested against hardcoded 0.19.1. IMO
testing against oldest supported and latest makes sense, if tests pass
on both, they should pass on releases inbetween too, unless there is
some behaviour affecting us changed twice.
* Update actions/cache from v2 to v3.
Also changed Core downloads from bitcoin.org to bitcoincore.org.
As of 13 March the latest pytest breaks the twisted tests.
As a result the version is pinned until that can be fixed.
Additionally, at the same time, the bitcoin ppa has been
removed and so cannot be used in our travis testing setup.
Hence we install bitcoin directly (for tests only, of course)
from bitcoin.org,
copying bitcoind and bitcoin-cli to `/usr/local/lib`.