Update host/ip pairing rather than add the hostname a second time
Added replace kwarg whether to first remove any existing hostnames that match
Avoid running qemu-img when hypervisor is specified as esxi.

This is shown in the logs before this patch:

```
qemu-img: Could not open '[0] vm1/vm1.vmdk': No such file or directory
```

And the result from running virt.get_disks vm1 was before this patch:

```
build04:
    ----------
    sda:
        ----------
        file:
            [0] vm1/vm1.vmdk
        image:
            Does not exist
```

After the patch is applied:

```
build04:
    ----------
    sda:
        ----------
        file:
            [0] vm1/vm1.vmdk
```
Remove print()
Unify name: emulator vs hypervisor
Adding hash compare of files in RemoteClient.get_file().

 Adding hash compare of file in RemoteClient.get_file(). Avoid downloading if file hasn't changed between local cache and on remote server.
 This doesn't eliminate number of salt calls from minion to master and no great speed up when master and minions are in the same LAN. However it may help, minions over Internet and with slow links.
Clarify and make connection settings more flexible for libvirt

Previously you could specify a hostname or IP in the minion configuration. It was not flexible enough. Now you can either specify an explicit libvirt URI, or a libvirt connection alias.

Note: this is an incompatible change to #6672 when it comes to the configuration. The connection string can no longer contain a hostname.

 - http://libvirt.org/drvesx.html#uriformat
 - http://libvirt.org/uri.html#URI_config
Merge branch 'develop' into esxi
KVM and qemu both use qemu-img
Fix FTP authentication in the salt fileclient

4f36393 inadvertently broke FTP authentication by stripping the username
and password from URIs and trying to use an HTTP authenticator. This
commit restricts that behavior to http(s) URIs. Fixes #6733.
Added 'success' field to successful runner return events
Merge remote-tracking branch 'upstream/develop' into develop

Conflicts:
	salt/runner.py
Prefix runner fun with 'runner' so round trip symmetric with api interface
Adapt the test case to the changes introduced in 7e9e889
Merge pull request #6743 from SmithSamuelM/develop

Added 'success' field to successful runner return events
Merge pull request #6742 from terminalmage/issue6733

Fix FTP authentication in the salt fileclient
Added param docs to grains.filter_by
Improved grains.filter_by usage example with multiple lookups
Added flag to allow overriding the grains.filter_by dict with Pillar
Merge pull request #6749 from whiteinge/filter_by-override

Allow filter_by to be overridden by pillar values