Set pillar-OPts to default to False
Adding ability for salt.states.file.copy to be able to specify user/group/mode
Adding the ability to include metadata in scheduled jobs as well as the ability to specify metadata from the command line using the command line.  Also including the ability to allow scheduled jobs to return data to the master, which can be used to list the scheduled jobs in the jobs runner.  Also including the ability to provided search criteria when listing jobs, eg. search by target, search by function and search by metadata.
Hint PF type if bracket enclosed IPv6 address
Make lscsi more verbose, and cut down on typing
Parse out the model name as well
Greedy/non-greedy minion matching

See https://github.com/saltstack/salt/issues/15673#issuecomment-58235569
for a full discussion of this issue.

Refs #15673
Lint fixes
Remove the (often erroneous) missing arguments warning

TypeErrors are indeed thrown when missing arguments issues happen.
However, the overwhelming majority of instances where this is thrown,
it's actually inaccurate and confusing to users. The exception itself
should be sufficient.
First attempt at caching the loaded configuration from the filesystem.

This basically should avoid loading and parsing YAML over and over again.
Handle more config filenames
The `syndic_config` call needs the path to the minion config file
Try caching the client too
Remove duplicate import
Allow getting the configuration from scratch.

Properly handle `client_config` when loading from cache.
Only delete the `_client` attribute if it has been set.
Remove the unnecessary `integration.ClientCase` class
Test the runner client under `tests/integration/clients`
Move tests away from `__init__`
Removed `--runner` because it's integrated in the client tests
Let's go wild and cache the local client as reusable a runtime global instance