Use `__all__` when loading modules(if provided).

* When loading the module's functions, if the module provides `__all__`, that's what's iterated.
* If a function provided in `__all__` starts with `_` it's not skipped because the module explicitly provided it.
* Minor formatting in the logging messages.
Remove forgotten `)`. Minor PEP8.
Use salt.utils.winapi.Com instead of manually
To avoid any future confusion, we'll use `__load__` instead of `__all__`.
Add check if bad fileserver backend is specified
Fix to properly print errors from cli.run()
Merge pull request #3784 from basepi/autherrorfix

Fixes #3760 Fix to properly print errors from cli.run()
Merge pull request #3783 from UtahDave/use_winapi-please

Use salt.utils.winapi.Com instead of manually running the pythoncom stuff
move dict definition outside loop
Create pkg list with pkg_resource.add_pkg
Fix a pep8 line length issue
proper use of add_pkg
Don't forget function parens
Merge pull request #3785 from UtahDave/use_winapi-please

win_pkg should use pkg_resource.add_pkg
Sort packages before returning
Re-apply 3055916b5ddcea62885a637c3a26a4e7d75b6107 correcting the copy/paste error. Refs #2563.

We should now provide the configuration filename to load configurations from at the parser's class level.
The calls to `ConfigDirMixIn.get_config_file_path()` still accept a filename, though, if that filename is `None`(the default), it grabs the filename from the class level attribute `_config_filename_`.
Merge branch 'develop' of github.com:saltstack/salt into hotfix/use-module-__all__-in-loader
Besides loading module functions from `__load__` we also log that information.

This will allow us to debug any bug reports stating that the function X is not loading(because they did not add it to an existing `__load__`).
Merge pull request #3786 from UtahDave/win_pkg_fixes

Sort packages before returning
Some more mirror support to travis.yaml pip install calls.