Added test case
Added support for a pkgs argument to the pip state

- The pip state has been modified to allow a pkgs argument
- It receives a list of packages to install
- Version specification must be enclosed by quotes
- If pkgs is specified, name is ignored
- If requirements or editable is specified, pkgs is ignored
Add integration tests for 'modules.file.replace()'.
Fix backup and pre-/append behaviour in modules.file.replace():
created unit test cases for linux_lvm module
Don't use -t -t for scp commands when tty enabled in salt-ssh
Discard stderr for salt-ssh with tty

Because we're using a tty, we only get a combined stdout and stderr. So
we throw away the stderr from our salt command and we don't worry about
the lack of an RSTR in the stderr on the master side
Route minion errors to master

Conflicts:
	salt/cli/__init__.py
Add allow_symlink argument to allow enforcing real directories.
added support for rev branch when using deepth parameter
Looks like we missed a couple of exitcodes
Simplify initial search. Determine 'backup' properly.
Add missing line.
Fix tests for #18841.
Fix tests for #18841.
Merge pull request #19072 from techhat/exitcodes

Looks like we missed a couple of exitcodes
Pylint.
pylint bug fixing
Merge branch 'develop' into linux_lvm_unit_tests
Enable file permissions lint checker.

This will allow us to confirm that no modules are added to salt with the
wrong file permissions. Default file permissions is 0644.