First pass at an automated check in the minion tune-in loop, using a threaded approach to periodically refresh the master if the grains on a minion have changed.
Re-write to use Scheduler instead of threads.
Update state.py

https://github.com/saltstack/salt/issues/7991
Merge pull request #7998 from terminalmage/quickfix

Add versionadded directive to dockerio module
Fix sphinx build warning

Section headers must have their underline the same length as the section
header itself.
Corrected typo (extended auth → external auth).
Add a lexical parser for MySQL grants to the MySQL module. Change the behavior of the grant-checker to use this new method by default and fallback to the strict method if it fails.
Generate jid in _wait in state module if not specified (can happen when called in the mine with queue=True)
Update state.py

https://github.com/saltstack/salt/pull/7992#issuecomment-26747276
if->elif per @s0undt3ch
Merge pull request #8001 from eliasp/eauth-typo

Corrected typo (extended auth → external auth).
Corrected typo (fromt he → from the).
Merge pull request #8007 from eliasp/auth-init-typo

Corrected typo (fromt he → from the).
slice the string. Don't use lstrip incorrectly
Merge pull request #8008 from UtahDave/develop

slice the string. Don't use lstrip incorrectly
Realized that the lexical grant parser doesn't handle multi-word statements. Corrected for this condition.
Added check about empty string
Merge pull request #8011 from malinoff/fix-no-output

Fix printing newline if there is nothing to print
Merge pull request #7992 from puluto/develop

Update state.py
Adding close process and service stop to windows installer