chore(etcd): cleanup TLS configuration
chore(etcd): cleanup TLS configuration

the TLS configuration was getting rather complex with slices of
tls.Config's being passed around and pointer nil checking for schema
types.

Introduce a new TLSInfo type that is in charge of holding the various
TLS key/cert/CA filenames the user passes in.

Then create a new TlsConfig type that has a Scheme and the Client and
Server tls.Config objects inside of it. This is used by the two
transport start methods which had been using a slice of tls.Config
objects and guessing at the scheme based on the non-nil value of the
Config.

SivagnanamCiena/etcd,sofuture/etcd,shafreeck/etcd,csuideal/etcd,steveeJ/etcd,YuleiXiao/etcd,purpleidea/etcd,giantswarm/etcd,cvik/etcd,wowsoso/etcd,qqsun8819/etcd,bdarnell/etcd,gityf/etcd,CrazyJvm/etcd,tguangch/etcd,yifan-gu/etcd,axingblog/etcd,improbable-io/etcd,rnaveiras/etcd,westhood/etcd,buaazp/etcd,TheHippo/etcd,ajityagaty/etcd,combk8s/etcd,hongbinz/etcd,shawnps/etcd,openedbox/etcd,polvi/etcd,wowsoso/etcd,xueshanf/etcd,sebschrader/etcd,cloudfoundry/etcd,sofuture/etcd,arthurcolle/etcd,bakins/etcd,jravetch/etcd,vimalk78/etcd,gityf/etcd,ylong/etcd,nekto0n/etcd,ajityagaty/etcd,heyitsanthony/etcd,OyTao/etcd_learning,elimisteve/etcd,bspline/etcd,insionng/etcd,openedbox/etcd,devfreesg/etcd,mischief/etcd,Winslett/etcd,mwitkow/etcd,tguangch/etcd,philips/etcd,wantonsolutions/dinv-etcd,dterei/etcd,fasaxc/etcd,offscale/etcd,lorneli/etcd,youxidev/etcd,princeqjzh/etcd,lumjjb/etcd,honeyqa/etcd,jeremyeder/etcd,chipironcin/etcd,xiang90/etcd,crandles/etcd,freeloop1114/etcd,honeyqa/etcd,tamird/etcd,mwitkow-io/etcd,fanminshi/etcd,mischief/etcd,HideoYamauchi/etcd,hpcloud/etcd,beni55/etcd,betawaffle/etcd,jefby/etcd,cvik/etcd,gouyang/etcd,glensc/etcd,giantswarm/etcd,bluebreezecf/etcd,pengzj/etcd,shafreeck/etcd,crandles/etcd,es-chow/etcd,philips/etcd,bdarnell/etcd,lorneli/etcd,fasaxc/etcd,coreos/etcd,purpleidea/etcd,shawnps/etcd,bspline/etcd,wantonsolutions/dinv-etcd,princeqjzh/etcd,linuxcer/etcd,mwitkow/etcd,arthurcolle/etcd,ravigadde/etcd,mkumatag/etcd,mickep76/etcd,plasticbox/etcd,xebitstudios/etcd,justintung/etcd,xdlinear/etcd,hzy001/etcd,chai2010/etcd,armstrongli/etcd,jlamillan/etcd,freeloop1114/etcd,visheshnp/etcd,rnaveiras/etcd,YuleiXiao/etcd,rchicoli/etcd,achanda/etcd,bluebreezecf/etcd,jonboulle/etcd,armstrongli/etcd,dterei/etcd,kingland/etcd,spacejam/etcd,insequent/etcd,ylong/etcd,csuideal/etcd,tempbottle/etcd,whuwxl/etcd,TheHippo/etcd,swingbach/etcd,nekto0n/etcd,glevand/coreos--etcd,jlamillan/etcd,spotify/etcd,cognusion/etcd,cloudfoundry/etcd,ravigadde/etcd,snailwalker/etcd,pauldallen/etcd,achanda/etcd,dalanlan/etcd,olark/etcd,olark/etcd,snailwalker/etcd,heyitsanthony/etcd,gtank/etcd,OyTao/etcd_learning,CrazyJvm/etcd,chai2010/etcd,pigfoot/etcd,gyuho/etcd,HideoYamauchi/etcd,spotify/etcd,mike-lerch/etcd,glensc/etcd,cchamplin/etcd,mgoelzer/etcd-fork2,rnaveiras/etcd,yudai/etcd,hongchaodeng/etcd,li-ang/etcd,Ulexus/etcd,Eagle-X/etcd,polvi/etcd,hroyrh/etcd,nkhare/etcd,mkumatag/etcd,jchauncey/etcd,imzhulei/etcd,mqliang/etcd,gtank/etcd,hroyrh/etcd,mkumatag/etcd,onlyjob/etcd,ecnahc515/etcd,a-robinson/etcd,SivagnanamCiena/etcd,tamird/etcd,barakmich/etcd,yudai/etcd,li-ang/etcd,es-chow/etcd,mitake/etcd,etcd-io/etcd,swingbach/etcd,jefby/etcd,westhood/etcd,wantonsolutions/dinv-etcd,hzy001/etcd,njharman/etcd,sinsharat/etcd,handsomesun/etcd,luxas/etcd,cockroachdb/etcd,sebrandon1/etcd,betawaffle/etcd,asim/etcd,Ulexus/etcd,mwitkow-io/etcd,akauppi/etcd,imzhulei/etcd,philips/etcd,svdata/etcd,xiang90/etcd,nieanan/etcd,StorReduce/etcd,coreos/etcd,xdlinear/etcd,dnaeon/etcd,spacejam/etcd,lumjjb/etcd,Ulexus/etcd,gouyang/etcd,ecnahc515/etcd,StorReduce/etcd,robszumski/etcd,axingblog/etcd,plasticbox/etcd,glycerine/etcd,kingland/etcd,fgbreel/etcd,Yhgenomics/etcd,ktateish/etcd,steveeJ/etcd,justintung/etcd,chenbaihu/etcd,njucslqq/etcd,sinsharat/etcd,cognusion/etcd,wfxiang08/etcd,etcd-io/etcd,nkhare/etcd,svdata/etcd,siddontang/etcd,pauldallen/etcd,junxu/etcd,Timer/etcd,luxas/etcd,iamqizhao/etcd,vimalk78/etcd,qqsun8819/etcd,dannysauer/etcd,whuwxl/etcd,sebschrader/etcd,raoofm/etcd,combk8s/etcd,fgbreel/etcd,tempbottle/etcd,iamqizhao/etcd,lzbgt/etcd,improbable-io/etcd,hongchaodeng/etcd,shakefu/etcd,onlyjob/etcd,Winslett/etcd,devfreesg/etcd,gae123/etcd,mitake/etcd,raoofm/etcd,gae123/etcd,njharman/etcd,mqliang/etcd,xebitstudios/etcd,qiaochao911/etcd,cloudfoundry/etcd,mqliang/etcd,yifan-gu/etcd,oscarrr110/etcd,cvik/etcd,xueshanf/etcd,glycerine/etcd,yyljlyy/etcd,cloudfoundry/etcd,joshix/etcd,Timer/etcd,barakmich/etcd,akauppi/etcd,glevand/coreos--etcd,hongbinz/etcd,zaphod-concur/etcd,fanminshi/etcd,mike-lerch/etcd,Yhgenomics/etcd,mickep76/etcd,xychu/etcd,fasaxc/etcd,Eagle-X/etcd,jeremyeder/etcd,mgoelzer/etcd-fork2,gyuho/etcd,wfxiang08/etcd,tangkun75/etcd,dnaeon/etcd,Ulexus/etcd,endocode/etcd,yichengq/etcd,youxidev/etcd,zaphod-concur/etcd,asim/etcd,linuxcer/etcd,gosharplite/etcd,a-robinson/etcd,jravetch/etcd,insequent/etcd,tangkun75/etcd,etcd-io/etcd,jmptrader/etcd,yichengq/etcd,delkyd/etcd,pengzj/etcd,joshix/etcd,chai2010-playground/etcd,cockroachdb/etcd,cvik/etcd,kkaneda/etcd,njucslqq/etcd,hpcloud/etcd,rchicoli/etcd,jonboulle/etcd,kkaneda/etcd,insionng/etcd,handsomesun/etcd,delkyd/etcd,dalanlan/etcd,dannysauer/etcd,chenbaihu/etcd,ajityagaty/etcd,beni55/etcd,ktateish/etcd,sayden/etcd,msanterre/etcd,sebrandon1/etcd,chai2010-playground/etcd,jchauncey/etcd,qiaochao911/etcd,visheshnp/etcd,yyljlyy/etcd,nieanan/etcd,buaazp/etcd,siddontang/etcd,QuantiumTechnology/etcd,lzbgt/etcd,robszumski/etcd,QuantiumTechnology/etcd,offscale/etcd,shakefu/etcd,gosharplite/etcd,elimisteve/etcd,spotify/etcd,msanterre/etcd,chipironcin/etcd,oscarrr110/etcd,spotify/etcd,endocode/etcd,sayden/etcd,bakins/etcd,xychu/etcd,cchamplin/etcd,junxu/etcd,jmptrader/etcd