You need to press enter to migrate from 1.1 to 1.5
Issue #4895: Support grains config for salt
Stub ATLAS_TOKEN in tests

Without this stub, the tests will fail if ATLAS_TOKEN is set locally 
when running the tests.
Pushes are hashed by name, not strategy.

@mitchellh this is a partial revert of 84ae22e. It took me a little bit
to figure out why this broke everything, but then I finally realized it.

84ae22e changes the finalize! function to lookup pushes by strategy
type, but pushes are keyed by push strategy name. In other words, given:

    config.push.define("foo", strategy: "bar")

the `push_configs` has will look like:


    { :foo => [:bar, #<PushConfig>] }

This is important, because if we key by strategy, the user cannot 
specify the same push strategy more than once:

    config.push.define("foo", strategy: "bar")
    config.push.define("zip", strategy: "bar")

If we keyed off of the strategy, this would be impossible.
Fix SafeExec tests
Merge pull request #4975 from mitchellh/sethvargo/fix_push

Fix push lookups
Add push fix to CHANGELOG
Fix Chef Solo template
Merge pull request #4973 from mitchellh/sethvargo/chef_roles_path

Fix Chef Solo template
Force opts to be options

cb6f3e5 introduced a change to the method airty of machine actions to remove the
`extra_env` attribute.

- Fixes #4960
Merge pull request #4972 from mitchellh/sethvargo/opts_airty

Force opts to be options
Merge pull request #4896 from analyzere/salt-grains-config

Issue #4895: Support grains config for salt
Add Salt grains to CHANGELOG
Merge pull request #4840 from MiLk/fixes/upgrading_home_path_v1_5

You need to press enter to migrate from 1.1 to 1.5
Update CHANGELOG.md
Add solo.rb fixes to CHANGELOG
kernel/v2: push config keys on strategy

/cc @sethvargo - This adds more tests that fail if this change isn't in
place.
Pushes are strings
stub_env is a real helper now :)
Sudoers example for Fedora distros