Depends on T124
```
commit 85aec87b11ec41295558175c63f1f5a849460fdf
Merge: ae4772468 789733891
Author: MarcoFalke <falke.marco@gmail.com>
Date: Tue Aug 15 23:34:07 2017 +0200
Merge #10711: [tests] Introduce TestNode
789733891 [tests] Introduce TestNode (John Newbery)
Pull request description:
Continues #10082
TestNode is a class responsible for all state related to a bitcoind node
under test. It stores local state, is responsible for tracking the
bitcoind process and delegates unrecognised messages to the RPC
connection.
This commit changes start_nodes and stop_nodes to start and stop the
bitcoind nodes in parallel, making test setup and teardown much faster.
On my vm, this changeset reduces total test_runner runtime for the base set of tests
(including building the cache) from 263s to 195s (a 25% speedup). Note that the time
reported by test_runner does not include time spent building the cache:
*with TestNode*:
```
→ date +"%T" ; ./test_runner.py -q ; date +"%T"
12:48:04
```