Merge remote-tracking branch 'origin/develop' into develop

* origin/develop:
  The documentation for 'Developing Salt' is missing a critical step for 0.17+ users who wish to utilize the test runner. This commit describes the direct installation of salt-testing.
  -- Please review for accuracy prior to merge --
Edit the docs with new `id` generation process
Switch priority of `socket.getfqdn()` and `/etc/hostname` id guessing
Retrieve ID from cache if possible
PEP8 line length
Cache any non-IP guess of minion ID
Only log that we're guessing the ID when that is actually true
Fix out-of-date comment
Cache the minion id in /var/lib/salt or C:\salt\var\lib
Nevermind:  cache in CONFIG_DIR/minion_id
Fix iptables module, buildrule includes table
Don't complain about PyLint W0221.
Fix remove environnement variables from the iptables rules generation
Merge pull request #7700 from s0undt3ch/hotfix/lint

Don't complain about PyLint W0221.
Merge pull request #7701 from ekatsah/fix-iptables-masquerading

Fix iptables masquerading
Add "switch" function to svn module.

This came via mofomikes in #salt.
Merge pull request #7702 from terminalmage/svn-switch

Add "switch" function to svn module.
Add password support to new svn.switch function
Merge pull request #7708 from terminalmage/svn-switch

Add password support to new svn.switch function
Refactor new win_ntp module

Use built in service management functions to handle starting/restarting
services.