[ecash-lib] Add TestRunner
Summary:
Currently, the integration tests setup is copy-pasted between each test. In this diff, TestRunner is added so we can abstract this setup away so tests can focus on the actual test.
Previous attempts tried to add a ecash-test-utils package with this class, however, since it depended on both chronik-client and ecash-lib (which in turn depended on ecash-test-utils), it was very difficult to resolve this circular dependency, so this approach has been dropped.
Test Plan: npm run test && npm run integration-tests && npm run build
Reviewers: bytesofman, #bitcoin_abc
Reviewed By: bytesofman, #bitcoin_abc
Differential Revision: https://reviews.bitcoinabc.org/D16064