Merge pull request #4473 from s0undt3ch/develop

We want sorted configuration files inclusion.
Fix #4474

Still needs testing
Add name option to minionswarm so many hosts can check in
Add usermod option to shadow.set_password (fixes #3655)
Merge pull request #4475 from basepi/shadow3655

Add usermod option to shadow.set_password (fixes #3655)
Fix #4319

The master server's key is reset when the master is restarted, the
syndic needs to detect this authentecation change and refresh the
local auth key
Fix client fault in syndic caused by raw returns being sent

At the wrong times from older minions
Fix bad ref from double del()
Fix quick typo
Add blurb about template inheritance and search path
Small PEP8 fixes
Add salt.utils.parse_docstring()

Currently only parses out dependencies, for use in
required_module_list().  Can be added to later as needed
Use parse_docstring in required_module_list (fixes #3727)

Should now work for the previous 'Required python modules: ' method, and
the RST ':depends:' method.

Does not parse ':optdepends:' as of yet, as that's not currently needed
Merge pull request #4478 from hank-at-code42/inheritance_doc

Add blurb about template inheritance and search path
Merge pull request #4480 from basepi/docstrparse

Add salt.utils.parse_docstring() to parse dependencies out of docstrings
Fix stop/start and add plist support to launchctl module.

All plists have to be read on first access as we don't know
if all the labels in a plist file match its filename. Not all
plist files are XML, some are binary, maybe even JSON. Thankfully
we have the plutil tool provided by the system for doing conversions.

Launchctl `stop` is not the same as stop on most systems. It will
kill the process, however most services will start up again as it's
very common for a service to have both `RunAtLoad` and `KeepAlive` set
in the services plist file.

Similiarly, `start` start will only start a service that has
previously been loaded without the `RunAtLoad` key in the service plist.
The man page for `launchctl` also notes that expected usage of `start`
is for debugging and testing.

These changes do not find per-user `~/Library/LaunchAgents` services
at the current time.
Corrected syntax error in include example for python-libs.

Changed

include:
  - python-libs

to

include:
  - python.python-libs
add -d to start salt in daemon mode
fixes stdout in cli environments
Merge pull request #4487 from aboe76/suse

suse init files add -d to start salt in daemon mode
Merge pull request #4482 from jasonrm/feature-launchctl-plist

Fix stop/start and add plist support to launchctl module.