etcdserver: linearizable password checking at the API layer
etcdserver: linearizable password checking at the API layer

For avoiding a schedule that can cause an inconsistent auth store [1],
password checking must be done in a linearizable manner.

Fixes https://github.com/coreos/etcd/issues/6675 and https://github.com/coreos/etcd/issues/6683

[1] https://github.com/coreos/etcd/issues/6675#issuecomment-255006389

coreos/etcd,xiang90/etcd,OyTao/etcd_learning,bluebreezecf/etcd,etcd-io/etcd,glevand/coreos--etcd,sebrandon1/etcd,jlamillan/etcd,a-robinson/etcd,armstrongli/etcd,hongchaodeng/etcd,qqsun8819/etcd,rnaveiras/etcd,mqliang/etcd,sinsharat/etcd,dannysauer/etcd,OyTao/etcd_learning,coreos/etcd,mkumatag/etcd,joshix/etcd,jlamillan/etcd,ajityagaty/etcd,hongchaodeng/etcd,ajityagaty/etcd,armstrongli/etcd,mkumatag/etcd,glevand/coreos--etcd,rchicoli/etcd,sebrandon1/etcd,mqliang/etcd,mickep76/etcd,tguangch/etcd,whuwxl/etcd,akauppi/etcd,ravigadde/etcd,vimalk78/etcd,li-ang/etcd,handsomesun/etcd,ravigadde/etcd,li-ang/etcd,yudai/etcd,a-robinson/etcd,endocode/etcd,yudai/etcd,mickep76/etcd,YuleiXiao/etcd,bluebreezecf/etcd,xiang90/etcd,YuleiXiao/etcd,fanminshi/etcd,gyuho/etcd,heyitsanthony/etcd,cockroachdb/etcd,lorneli/etcd,bdarnell/etcd,plasticbox/etcd,lorneli/etcd,heyitsanthony/etcd,lumjjb/etcd,rnaveiras/etcd,rchicoli/etcd,CrazyJvm/etcd,insequent/etcd,cockroachdb/etcd,akauppi/etcd,bdarnell/etcd,mqliang/etcd,whuwxl/etcd,vimalk78/etcd,endocode/etcd,insequent/etcd,gyuho/etcd,joshix/etcd,visheshnp/etcd,visheshnp/etcd,fanminshi/etcd,ajityagaty/etcd,tguangch/etcd,plasticbox/etcd,lumjjb/etcd,etcd-io/etcd,CrazyJvm/etcd,mkumatag/etcd,sinsharat/etcd,rnaveiras/etcd,qqsun8819/etcd,dannysauer/etcd,handsomesun/etcd,etcd-io/etcd