Allow etcd config file to be passed to apiserver, kubelet, and proxy

This is meant to fix #1338 .

I'm a relative golang newbie, so let me know where I'm going wrong here.
Hey, the internal interface doesn't expose .GetCluster (used below), which is why I changed it. What's your preference:
* `var etcdClient *etcd.Client`
* Change the internal interface to include .GetCluster
* Change the logging below