* fix recordio split and task passes
* update for pre commit
* update
* update, still need to sync client wait for pass end.
* able to sync passes for task dispatching
* update to comment
* update
* fix yapf check
* why local pre-commit fails? version is the same
* fix race condition
* update
* fix race condition
* this still have duplicate problem in unit test
* update
* update
* update by comment
* update
* init etcd cclient
* add etcd
* add etcd.go
* fix compile problem
* move code to etcd.go
* add etcd_lister.go for pserver client
* add etcd_client_test.go
* merge etcd_client_test and client_test
* refine client_test.go
* refine code
* format code
* add TODO and use interface instead of struct
* fix typo of initDesiredPservers
* optimize dir structure of go/pserver/client
* add a flag to config index for pserver
* follow comment
* fix path
* optimize code
* remove err in pserver NewEtcd
* restore comment about /ps_desired