Verify pillar from master on minion.

In some cases, it's possible for minion to get an invalid pillar from master,
through a mostly valid reply. Check that at least it's a dict, otherwise later
code tries to do lookups in it and fails confusingly.
Add support for `SALT_CONFIG_DIR` `env` variable. Fixes #2399.
Allow the use of `SALT_CONFIG_DIR` through API access. Refs #2399.
Use the `CamelCase`'d package name. Fixes #8606.
`apache-libcloud` should not be a dependency for Windows.
Merge pull request #8608 from s0undt3ch/develop

Use the `CamelCase`'d package name. Fixes #8606.
Need to use deepcopy()
Merge pull request #8611 from techhat/deepcopy

Need to use deepcopy()
Vertical args to virt.init, line too long
Provide a default conf_dir to look in for cloud.deploy.d
Merge pull request #8613 from techhat/cloudapi

Provide a default conf_dir to look in for cloud.deploy.d
Make sure we have a config dir setting.
Add check for the validity of return data
Catch virt os.errors and return a failure
Update api.get_event docs to match SaltEvent.get_event

Ref #8524
Merge pull request #8618 from basepi/geteventdocs

Update api.get_event docs to match SaltEvent.get_event
Verify the resolv.conf in mounted images
Cleanly handle linked resolv.conf files
Verify that the resolvdir is present
Update spec file for 0.17.2