Remove hardcoded paths

* added helper functions to return variables for system we are running on
* removed hardcoded paths and socket type
wip
Fixes the issue in LP #1331744 comment #2
Updated fix
more fixing
Ignore empty machine addresses
mend
Merge pull request #136 from wallyworld/ignore-empty-machine-addresses

Ignore empty machine addresses

Older versions of juju could write empty machine addresses to state. This messes up the peer address selection when upgrading a nonha env to a ha one. So we add code to ignore such empty addresses.

Fixes: https://bugs.launchpad.net/juju-core/+bug/1329123
Action Watcher can optionally filter on prefix
Add tests for Unit.WatchActions
Refactor filterFn to make loop() function cleaner
one more refactor; simplify watcher struct
1. Don't use Tags internally 2. Log unexpected key value in watcher filterFn
Merge pull request #132 from johnweldon/unit-action-watcher

Unit Action Watcher

Add Unit.WatchActions for filtered action notifications by Unit
Change rsylog ruleset so that local messages are no longer dropped
Change syslog to not use a default ruleset
ryslog: fixing tests
Merge pull request #139 from wwitzel3/012-local-rsyslog

Fix rsyslog configuration for local provider

syslog/config: stop rsyslog breaking for local provider

The rsyslog configuration used to create a default ruleset that dropped all messages after forwarding juju ones onto the state servers. This broke rsyslog for users of the local provider, where the rsyslog configuration was your main machine (all non-juju messages were dropped).

The new config no longer uses a default ruleset. It still forwards juju messages and then only drops the juju ones which have already been handled.

https://bugs.launchpad.net/ubuntu/+source/rsyslog/+bug/479592
Merge branch 'master' into os-speciffic-vars

Conflicts:
	cmd/jujud/agent.go
	cmd/jujud/main.go
	cmd/jujud/run.go
	worker/uniter/jujuc/server.go
Added comments, removed extra variables