Add list clients
Add authentication
Add authentication and split the code into doer.go and pipeline.go