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
Fixed formatting in doc/topics/tests/index.rst
Merge branch 'develop' of https://github.com/saltstack/salt into develop
Merge pull request #4197 from zsimic/develop

Fixed formatting in doc/topics/tests/index.rst
load the module if pillar/grain config exists
Merge pull request #4203 from ranl/develop

load the tomcat module if pillar/grain config exists
Make file.sed return true even if `after` isn't found in file
Merge pull request #4206 from basepi/sedfix4063

Make file.sed return true even if `after` isn't found in file
Rename file.contains_regex to file.contains_regex_multiline
Remove lchar from file.contains_regex_multiline
Add file.contains_regex (operates on single lines)
Use posix path sep since master only runs on posix
Copy stats to win_file
Force group and user to 0 for now.
Fix posix path separator
add a mention of the include_empty option to file.recurse
Replace file.contains_regex with multiline version (keep same behavior)
Fix test=True when multiprocessing = False