Consul-Conf: config templates from consul data

Object oriented mechanism to rewrite config files from template filled in by consul data.  The primary functionality here is to go through the consul services and nodes, using their health checks to come up with an idea of what nodes offer what servies  and their health status.  This data can then be plugged into  template to write out a configuration file. The code includes a diffing mechanism to verify that the file has changed, with comment exclusion, and hooks eg to restart services.
I'm not sure on that.  I think consul itself maintains synchronized consistency right?  So even if the leader is lost, the cluster is still consistent, right?  And writes will be blocked until quarum is reached, so the same data is available.  But if we block in this situation, we can't bring up new nodes even though the discovery data is still consistent.  Besides, in the (Granted unlikely) scenario when leadership is lost directly after an accepted change, none of the nodes would pick up that change, even though it is perfectly valid.