elasticsearch returner.

Dependencies:

- official elasticsearch python client
- jsonpickler.

configuration is defined in the master config file:

```yaml
ext_job_cahe: elasticsearch

elasticsearch:
    host: 'some.host.com:9200'
    index: 'salt'
    number_of_shards: 1 (optional)
    number_of_replicas: 3 (optional)
```
Added preliminary documentation
correct master settings
add link to elasticsearch client library docs
fixed lint errors
Initial commit of a zookeeper concurrency control module
fixes #12801

get ssh_interface if it is set, otherwise just use public_ips
Merge pull request #12868 from gtmanfred/private_ips

fixes #12801
Delete cache when destroying minions

only if update_cachedir is set
add delete_minion_cachedir to destroy functions

Also to the missing_node_cache function to delete the cache on
list_nodes_full, if the server was deleted with something besides
salt-cloud.
fix pylint errors
Merge pull request #12869 from gtmanfred/cache

use delete_minion_cachedir
fix the vm_ variable for lxc delete_minion_cache
Merge pull request #12870 from gtmanfred/cache

fix pylint errors
use show_instance for nova.create
cleanup nova driver using show_instance

There isn't a reason to use list_nodes_full just to find information about the
cloud server.  It is already done to see if it the server already exists in the
salt.cloud.CloudClient to make sure one in the environment doesn't already
exist with that name.
use show_instance for openstack driver too

show_instance for libcloud uses list_node_full already
Be consistent on state/status

Turns out libcloud needs it to be state, instead of status of the server
slice.  Should be set now
Set log level for requests in novaclient to WARNING

Just need to get rid of the stupid starting https connection message on
every requests connection in novaclient.  It can be set in the __opts__,
but will be documented when the change in made later.
return empty dict if server_show_libcloud fails

Should be an empty list, if it returns an index error, it means no
servers were matched.