Merge branch 'release/0.8.0-alpha.5' into develop
Add update-settings action
Enable support for upstart in service actions
Fix update-settings action
Correct typo in docstring
Fix environment crate

The environment variables would toggle between being set and removed
on successive runs.
Add script user to ssh execute logging, and cleanup output logging
use single-quotes in lieu of doubles with passwd

Fixes #170
Fix tests for quoting changes in sudo commands

References #170
Add NodeHardware protocol
Update to latest stevedore
Add flag-on-change to package-source

The flag allows taking an action based on whether the package sources
have changed or not.
Add :allow-unsigned option to the package action

Allow unsigned packages to be installed by specifying
`:allow-unsigned true` in the package action.
Remove extraneous + symbol
Add support for NodeHarware protocol to node-list
Add assertf plan function

Enables assertions in plan functions.
Add target crate funtion

Returns the denormalised map for the target node.
Make target-flag? callable as a plan function
Updates packages when package source changes

In the :package-source crate install method, update the packages when
the package source changes.  This ensures packages from the updated or
new package source are available.
Update to the latest ssh-transport