Replace rsyslog for non-bootstrap agents

This PR uses a fork of the standard syslog package to stream logs directly to state machine rsyslog daemon

update tls config

* ensureCertificates now adds local IPs to subjectAltName. This allows clients to validate the server when connecting via IP
* fixed tls config passed to the client
Add state machine addresses
Replaced strings.Split() with net.SplitHostPorts()
Updated dependencise.tsv and separated tests

* Only the forwarder tests should be run on Windows
* updated dependencies.tsv to include the --nounixsocket fix on Windows
api/uniter: validate unit name before relation-get

The name of the unit passed in from the cli is not a string for of a tag so we have to validate that it actaully is a unit name (the id part of a unit tag).
Merge pull request #677 from davecheney/194-api-uniter-validate-unit-name

api/uniter: validate unit name before relation-get

The name of the unit passed in from the cli is not a string form of a tag so we have to validate that it actaully is a unit name (the id part of a unit tag).
Merge pull request #499 from gabriel-samfira/replace-rsyslog

Replace rsyslog for non-bootstrap agents

This PR uses a fork of the standard syslog package to stream logs directly to state machine rsyslog daemon, without the need for a local rsyslog install.

The forked version of syslog allows TLS connections, and works from Windows.