Ensure that consul is installed as a part of bootstapping

This patch adds consul config to jiocloud to ensure
that it happens during the intial bootstrapping
phase. This is so that we can assume that DNS
can resolve external addresses during Puppet
compile time, so that we can use a Puppet
function to determine if a list of ip addresses
has been registered for a service.

It also fixes the following things required
to support this feature:

1. removes the consul user code from the manifest,
b/c it was causing the sudoers file to be overwriteen
when consul is installed as a part of the bootstrapping
process. The user is instead set in hiera, just like
other system users.

2. Updates service_blocker to ensure that is only
happens after services have been refreshed in
consul.

3. Ensures that consul service does not start for
agents until at least one server is registered via
the discovery token.