ETCD_ENDPOINT now optional.

If ETCD_ENDPOINT is empty then Phlag does not try to use etcd.
If you are directly using NewWithEndpoint, then we assume that users know what they are doing.
Did some small refactoring around error test and removed some of the switch that were confusing.