cache each node individually on a show_instance()
pass the provider to the delete_minion_cache

It was not being passed to delete in the correct directory, because it
wasn't recreating prov_dir correctly. This fixes the issue.

Now the cache is up to date, and adds the minion to
/var/cache/salt/cloud on create, and deletes it on delete, also deletes
it if it is missing.  This could be used to key off a wheel.key.delete
in the reactor of old minions.
fix pylint errors

double space and lxc had name, instead of vm_ again
cache minion in all show_instance() functions
Merge pull request #12875 from terminalmage/docs

Add note about new hard dep for python-requests
Merge pull request #12876 from gtmanfred/cache

fix up cache problems
make more providers cache data and delete it correctly
add rackspace to the create caching

Also clean up some of the caching.

These are the remaining drivers who do not cache on create

botocore_aws.py
cloudstack.py
ec2.py
gogrid.py
joyent.py
linode.py
proxmox.py
saltify.py
pylint fixes
Merge pull request #12877 from gtmanfred/cache

cache on create for more drivers.
added optional availability zones to openstack cloud driver
Add zshell completion for salt salt-call and salt-cp

I will do bash completion soonish
Merge pull request #12881 from gtmanfred/zshell

Add zshell completion for salt salt-call and salt-cp
win_useradd: getting %USERPROFILE% from the registry
Merge pull request #12882 from grischa/openstack_availability_zones

added optional availability zones to openstack cloud driver
Add note regarding libcloud trunk
Merge pull request #12886 from techhat/osaz

Add note regarding libcloud trunk
Add aliyun for salt cloud
Merge remote-tracking branch 'upstream/develop' into aliyun
remove saltenv from repo_opts in yumpkg.py

Closes 12887