Enable the usage of existing 'salt-call -m' option.

Currently, the ``-m`` flag for salt-call has no effect in the loaders.
This commit allows users to specify exactly the module dirs to load
given that they follow the naming conventions for 'grains', 'runners',
'modules', 'states', etc. This is a shortcut for having to refresh cache
state when using a masterless salt-call.
allow matching on presence of a key when value is a dict
allow matching on presence of a key when value is a dict -- for grains too
Allow pillar.items to also return pillar data
Force use of a known working shell

This solves problems with running commands as users with an invalid or
odd shell such as /bin/false
Allow specifying umask for cmd
Merge pull request #4141 from wichert/cmd-enforce-working-shell

cmd: force use of a known working shell.
Merge pull request #4143 from wichert/cmd-umask

Allow specifying umask for cmd.
Merge pull request #4145 from holmboe/develop

Rename silent outputter from "none" to "quiet".
Remove esky errors because they only confuse %99.99 of users
Ok, sorry, I was on an airplane and it was very late

Yes, I should have been sleeping, but this is why I don't mess
with things like compilers while taking red eye filghts after
conferences
uhh, yes....
Fix issue that kill cmd on Windows
Fix cwd on Windows
Fix #4101
Merge pull request #4147 from UtahDave/develop

Fix issues with cmd module and states on Windows.
Fixed :doc: uses in the docs that were not rendering due to an extra space.
Corrected walkthrough path in doc reference.
Added a couple missing language specifiers for the code-block directive and switched a couple 'yaml' specifications to 'jinja' to get proper highlighting.
Fixed several minor misspellings and acronym capitalizations.