Add TestShell class
Add TestShell class

A BitcoinTestFramework child class which can be imported by an external user or
project. TestShell.setup() initiates an underlying BitcoinTestFramework object
with bitcoind subprocesses, rpc interfaces and test logging.
TestShell.shutdown() safely tears down the BitcoinTestFramework object.

bitcoinknots/bitcoin,bitcoinsSG/bitcoin,n1bor/bitcoin,sstone/bitcoin,mm-s/bitcoin,DigitalPandacoin/pandacoin,apoelstra/bitcoin,jnewbery/bitcoin,JeremyRubin/bitcoin,litecoin-project/litecoin,jambolo/bitcoin,practicalswift/bitcoin,tecnovert/particl-core,practicalswift/bitcoin,jnewbery/bitcoin,dscotese/bitcoin,monacoinproject/monacoin,ElementsProject/elements,ajtowns/bitcoin,JeremyRubin/bitcoin,cdecker/bitcoin,instagibbs/bitcoin,kallewoof/bitcoin,dscotese/bitcoin,anditto/bitcoin,mm-s/bitcoin,monacoinproject/monacoin,prusnak/bitcoin,Sjors/bitcoin,bitcoinsSG/bitcoin,AkioNak/bitcoin,namecoin/namecore,DigitalPandacoin/pandacoin,tjps/bitcoin,n1bor/bitcoin,achow101/bitcoin,apoelstra/bitcoin,jamesob/bitcoin,particl/particl-core,GroestlCoin/GroestlCoin,rnicoll/dogecoin,ajtowns/bitcoin,monacoinproject/monacoin,ElementsProject/elements,tecnovert/particl-core,EthanHeilman/bitcoin,sstone/bitcoin,jnewbery/bitcoin,JeremyRubin/bitcoin,rnicoll/bitcoin,litecoin-project/litecoin,domob1812/namecore,fujicoin/fujicoin,mm-s/bitcoin,ajtowns/bitcoin,mruddy/bitcoin,dscotese/bitcoin,JeremyRubin/bitcoin,EthanHeilman/bitcoin,achow101/bitcoin,domob1812/bitcoin,EthanHeilman/bitcoin,mruddy/bitcoin,fanquake/bitcoin,yenliangl/bitcoin,litecoin-project/litecoin,instagibbs/bitcoin,mm-s/bitcoin,gjhiggins/vcoincore,bitcoinsSG/bitcoin,midnightmagic/bitcoin,EthanHeilman/bitcoin,vertcoin/vertcoin,mitchellcash/bitcoin,namecoin/namecoin-core,particl/particl-core,achow101/bitcoin,instagibbs/bitcoin,rnicoll/bitcoin,sipsorcery/bitcoin,alecalve/bitcoin,MarcoFalke/bitcoin,jonasschnelli/bitcoin,apoelstra/bitcoin,mitchellcash/bitcoin,gjhiggins/vcoincore,qtumproject/qtum,kallewoof/bitcoin,MeshCollider/bitcoin,prusnak/bitcoin,jambolo/bitcoin,namecoin/namecore,jnewbery/bitcoin,tjps/bitcoin,peercoin/peercoin,cdecker/bitcoin,ElementsProject/elements,n1bor/bitcoin,DigitalPandacoin/pandacoin,achow101/bitcoin,GroestlCoin/GroestlCoin,mitchellcash/bitcoin,jonasschnelli/bitcoin,practicalswift/bitcoin,andreaskern/bitcoin,midnightmagic/bitcoin,n1bor/bitcoin,jambolo/bitcoin,alecalve/bitcoin,qtumproject/qtum,sipsorcery/bitcoin,AkioNak/bitcoin,ahmedbodi/vertcoin,peercoin/peercoin,prusnak/bitcoin,alecalve/bitcoin,particl/particl-core,MarcoFalke/bitcoin,cdecker/bitcoin,fanquake/bitcoin,bitcoinknots/bitcoin,MeshCollider/bitcoin,dscotese/bitcoin,instagibbs/bitcoin,JeremyRubin/bitcoin,bitcoin/bitcoin,sipsorcery/bitcoin,andreaskern/bitcoin,pstratem/bitcoin,AkioNak/bitcoin,jamesob/bitcoin,sstone/bitcoin,ElementsProject/elements,kallewoof/bitcoin,pstratem/bitcoin,cdecker/bitcoin,Xekyo/bitcoin,pstratem/bitcoin,rnicoll/dogecoin,bitcoin/bitcoin,ahmedbodi/vertcoin,vertcoin/vertcoin,ajtowns/bitcoin,n1bor/bitcoin,anditto/bitcoin,MarcoFalke/bitcoin,kallewoof/bitcoin,apoelstra/bitcoin,qtumproject/qtum,mruddy/bitcoin,peercoin/peercoin,tjps/bitcoin,midnightmagic/bitcoin,yenliangl/bitcoin,jamesob/bitcoin,MarcoFalke/bitcoin,DigitalPandacoin/pandacoin,litecoin-project/litecoin,bitcoinknots/bitcoin,jonasschnelli/bitcoin,AkioNak/bitcoin,vertcoin/vertcoin,bitcoinsSG/bitcoin,tjps/bitcoin,yenliangl/bitcoin,Sjors/bitcoin,GroestlCoin/GroestlCoin,jlopp/statoshi,fujicoin/fujicoin,midnightmagic/bitcoin,domob1812/namecore,bitcoinsSG/bitcoin,andreaskern/bitcoin,apoelstra/bitcoin,namecoin/namecore,cdecker/bitcoin,fujicoin/fujicoin,qtumproject/qtum,lateminer/bitcoin,gjhiggins/vcoincore,jambolo/bitcoin,pstratem/bitcoin,lateminer/bitcoin,bitcoinsSG/bitcoin,instagibbs/bitcoin,MarcoFalke/bitcoin,midnightmagic/bitcoin,qtumproject/qtum,sstone/bitcoin,pataquets/namecoin-core,monacoinproject/monacoin,lateminer/bitcoin,namecoin/namecore,namecoin/namecore,ElementsProject/elements,pataquets/namecoin-core,mitchellcash/bitcoin,yenliangl/bitcoin,fujicoin/fujicoin,fujicoin/fujicoin,rnicoll/dogecoin,mitchellcash/bitcoin,ahmedbodi/vertcoin,jonasschnelli/bitcoin,apoelstra/bitcoin,ajtowns/bitcoin,domob1812/namecore,tjps/bitcoin,GroestlCoin/GroestlCoin,namecoin/namecore,bitcoin/bitcoin,tecnovert/particl-core,sipsorcery/bitcoin,vertcoin/vertcoin,GroestlCoin/bitcoin,domob1812/bitcoin,bitcoin/bitcoin,lateminer/bitcoin,anditto/bitcoin,GroestlCoin/bitcoin,EthanHeilman/bitcoin,gjhiggins/vcoincore,andreaskern/bitcoin,DigitalPandacoin/pandacoin,litecoin-project/litecoin,sstone/bitcoin,MeshCollider/bitcoin,jnewbery/bitcoin,namecoin/namecoin-core,ahmedbodi/vertcoin,pataquets/namecoin-core,litecoin-project/litecoin,tecnovert/particl-core,bitcoin/bitcoin,namecoin/namecoin-core,qtumproject/qtum,jlopp/statoshi,fanquake/bitcoin,MarcoFalke/bitcoin,rnicoll/bitcoin,AkioNak/bitcoin,andreaskern/bitcoin,fanquake/bitcoin,alecalve/bitcoin,monacoinproject/monacoin,fanquake/bitcoin,sipsorcery/bitcoin,prusnak/bitcoin,instagibbs/bitcoin,yenliangl/bitcoin,Xekyo/bitcoin,vertcoin/vertcoin,MeshCollider/bitcoin,prusnak/bitcoin,EthanHeilman/bitcoin,fanquake/bitcoin,bitcoinknots/bitcoin,peercoin/peercoin,monacoinproject/monacoin,midnightmagic/bitcoin,anditto/bitcoin,jonasschnelli/bitcoin,alecalve/bitcoin,jambolo/bitcoin,domob1812/bitcoin,bitcoin/bitcoin,mruddy/bitcoin,mm-s/bitcoin,pataquets/namecoin-core,rnicoll/bitcoin,achow101/bitcoin,GroestlCoin/bitcoin,mruddy/bitcoin,namecoin/namecoin-core,ahmedbodi/vertcoin,practicalswift/bitcoin,domob1812/bitcoin,ElementsProject/elements,DigitalPandacoin/pandacoin,JeremyRubin/bitcoin,practicalswift/bitcoin,jamesob/bitcoin,yenliangl/bitcoin,tjps/bitcoin,andreaskern/bitcoin,lateminer/bitcoin,rnicoll/dogecoin,sstone/bitcoin,Xekyo/bitcoin,fujicoin/fujicoin,qtumproject/qtum,pataquets/namecoin-core,MeshCollider/bitcoin,achow101/bitcoin,peercoin/peercoin,gjhiggins/vcoincore,rnicoll/bitcoin,jlopp/statoshi,AkioNak/bitcoin,practicalswift/bitcoin,ahmedbodi/vertcoin,jlopp/statoshi,GroestlCoin/GroestlCoin,Xekyo/bitcoin,MeshCollider/bitcoin,Sjors/bitcoin,domob1812/namecore,cdecker/bitcoin,namecoin/namecoin-core,sipsorcery/bitcoin,Xekyo/bitcoin,jamesob/bitcoin,particl/particl-core,lateminer/bitcoin,kallewoof/bitcoin,GroestlCoin/GroestlCoin,ajtowns/bitcoin,anditto/bitcoin,gjhiggins/vcoincore,domob1812/namecore,tecnovert/particl-core,vertcoin/vertcoin,anditto/bitcoin,alecalve/bitcoin,domob1812/namecore,dscotese/bitcoin,peercoin/peercoin,pstratem/bitcoin,bitcoinknots/bitcoin,Sjors/bitcoin,particl/particl-core,n1bor/bitcoin,mruddy/bitcoin,domob1812/bitcoin,GroestlCoin/bitcoin,jlopp/statoshi,Sjors/bitcoin,GroestlCoin/bitcoin,pstratem/bitcoin,pataquets/namecoin-core,jambolo/bitcoin,jamesob/bitcoin,particl/particl-core,jlopp/statoshi,dscotese/bitcoin,prusnak/bitcoin,domob1812/bitcoin,tecnovert/particl-core,GroestlCoin/bitcoin,namecoin/namecoin-core,mm-s/bitcoin,mitchellcash/bitcoin,Xekyo/bitcoin,rnicoll/dogecoin,kallewoof/bitcoin,rnicoll/bitcoin