Generate a unique NATS client id for event msgs
Generate a unique NATS client id for event msgs

After connecting one Habitat supervisor to Automate, all subsequent
connection attempts from Habitat fail with:
```
[2019-06-05T17:09:34Z ERROR ratsio::nats_client::client] NATS Server - Error - Permissions Violation for Publish to ".habitat"
```

This is happening because we hard coded the client identifier used
to connect to the NATS Streaming server inside the Automate server.

From the NATS Streaming server [documentation](https://github.com/nats-io/nats-streaming-server#client-connections):
>As described, clients are not directly connected to the streaming
server. Instead, they send connection requests. The request includes
a client ID which is used by the server to uniquely identify, and
restrict, a given client. That is, no two connections with the same
client ID will be able to run concurrently.

This change is generating a unique client id composed by the key word
"hab_client_" plus the supervisor id.

New client id example: `hab_client_4a5cb023f9274a8d9418bf5f974bdb52`

Signed-off-by: Salim Afiune <2b0aff3923bd0ab6bbf45ffb37e57dcea8e1b0b8@chef.io>

rsertelon/habitat,habitat-sh/habitat,habitat-sh/habitat,habitat-sh/habitat,rsertelon/habitat,habitat-sh/habitat,rsertelon/habitat,habitat-sh/habitat,rsertelon/habitat,habitat-sh/habitat,habitat-sh/habitat,habitat-sh/habitat,rsertelon/habitat,rsertelon/habitat,rsertelon/habitat