Add blocking server.Run() to imporove listen logic
Add config type and fetch from etcd

The only configuration that needs to be passed to skydns is the etcd
machines addrs in the env var ETCD_MACHINES.  This can be a comma
separated list.  All other configuration for skydns is stored in etcd so
that every resolver has the same configuration across the cluster.
Merge pull request #1 from crosbymichael/next

Various improvements for skydns