clientv3/ordering: compare and update prevRev atomically
clientv3/ordering: compare and update prevRev atomically

Several goroutines may call setPrevRev concurrently with different
revisions, all higher than prevRev. Previously all of these goroutines
could set prevRev, so prevRev may be replaced by older one.

If response's revision equals to prevRev, there's no need to call
setPrevRev.

li-ang/etcd,sebrandon1/etcd,ajityagaty/etcd,mqliang/etcd,rnaveiras/etcd,cockroachdb/etcd,mqliang/etcd,ajityagaty/etcd,akauppi/etcd,whuwxl/etcd,xiang90/etcd,xiang90/etcd,sinsharat/etcd,lorneli/etcd,rnaveiras/etcd,joshix/etcd,mqliang/etcd,cockroachdb/etcd,etcd-io/etcd,heyitsanthony/etcd,etcd-io/etcd,ajityagaty/etcd,etcd-io/etcd,glevand/coreos--etcd,lorneli/etcd,vimalk78/etcd,fanminshi/etcd,bluebreezecf/etcd,heyitsanthony/etcd,mkumatag/etcd,coreos/etcd,dannysauer/etcd,sinsharat/etcd,mkumatag/etcd,li-ang/etcd,dannysauer/etcd,rnaveiras/etcd,fanminshi/etcd,glevand/coreos--etcd,bdarnell/etcd,whuwxl/etcd,bluebreezecf/etcd,sebrandon1/etcd,coreos/etcd,akauppi/etcd,mkumatag/etcd,joshix/etcd,gyuho/etcd,vimalk78/etcd,gyuho/etcd,bdarnell/etcd