Deal with the move to salt 2014.7.0
On changes takes an ordered dict
Don't attempt to sleep
Use new name
Install salt and zeromq from our repositories
Create a state that will install consul and setup a basic cluster
Detect the datacenter we are in and use that in the consul config
Refactor to sanely handle multi dc (no interconnect though).
Encrypt the Consul Gossip Protocol using a shared key
Support multiple CAs
Setup Consul to use TLS certificates to secure RPC communication
Refactor the consul state to the new dir structure
Setup the ACL policy in a pillar
Refactor for port forwards
Syntax fixes
Use the PSF_CA and only give certificates to the consul servers

Consul (really go's TLS) does not check the extendKeyUsage x509
extension to ensure that a certificate is valid for serverAuth.
This means that if a client was compromised they could turn themselves
into a server. Until Consul supports either a different server_name
for server and client, or it supports checking for a serverAuth in
the extendedKeyUsage we need to restrict TLS to only the servers
ensuring that a client won't have a TLS certificate that is acceptable
to be a server.

We also configure server_name so that we can reuse the PSF_CA with
a certificate with the CN of consul.psf.io instead of relying on
a seperate CA.
Don't write files we don't need anymore
Fix the pillar name
Handle startup way better so that we join the cluster in a saner way
No reason to forward this port