Rework of more_time feature

In the past this feature has basically checked returns, pinged minions if they were still running the job, then returning once the job was no longer run remotely. This has caused some issues with race conditions if the minion or master are busy (and the time between minion done, and master recieved gets large).

This changes the behavior of the "wait" mechanism. The intent of this feature is to wait for the job return from all minions the job went to. To accomplish this we fire the job, then check the returns. If the initial returns are what we wanted/expected we break. If it isn't we will ping all targets and see if its still running. If more minions return, we merge them into the list of minions we are waiting for. We will timeout the job once all minions have stopped running the job and TIMEOUT seconds have passed (since the slowest minion)

Conflicts:

	salt/client/__init__.py
Pylint cleanup
Start pinging minions after TIMEOUT, instead of immediately
Add a timeout to get_event_iter_returns, the old implementation won't timeout if the event buss is relatively busy
Typo fix
Ensure that mount.mounted modifies entries in fstab on changes

mount.mounted compared entries in fstab only by their fs_spec to determine if an
entry that is about to be added was already present and that the original one
should therefore be modified. It is, however, necessary to compare both fs_spec
and fs_file fields to allow users to mount new filesystems or block devices to
the same mountpoint.

This fixes #15968 which had already been fixed in #9573 but was re-introduced in
c8c6112 due to, what I believe, not rebasing that PR against develop.
warn for config
move systemd notify to process
Fix key coloring for raet transport.
salt/salt/modules/network.py documentation.  Added versionadded to functions new in 2014.7
Fix #16165, fix the mods path in the shim and pass mods into wfuncs
use the config_dir to find the roster
Update docs reference to Halite

Halite is no longer "new", and shouldn't be referred to as such.
Pylint fix
Merge pull request #16168 from cro/raet_key_color_20147

Fix stacktrace in salt-key when using raet
Merge pull request #16172 from terminalmage/docs

Update docs reference to Halite
Merge pull request #16169 from rfairburn/network-module-docs

salt/salt/modules/network.py documentation. Added versionadded to functions new in 2014.7
Merge pull request #16156 from rallytime/bp-16035

Backport #16035 to 2014.7
Removed all the "os.listdir" based "checks"

* Per #15950 comparison against output of os.listdir is not a sane way to
test for existence of block devices.
Don't execute lsblk using absolute path

* Removed absolute path from lsblk call. Code already tests if lsblk is
in PATH, whichever lsblk satisfied that test in __virtual__ should be
the command that is called.