Merge pull request #7376 from s0undt3ch/0.17

Cherry picked `salt.states.file` changes
Set opts after identity for ssh-copy-id
Older ssh-copy-id commands can't pass through ssh options
forgot the quotes....
Revert "salt-ssh still only supports glob, take out the extra target options"

This reverts commit cf9b241e945654ee85abe72d173028e889b58b6f.
Deprecate `runas` usage on `salt.states.supervisord`. Refs #6961.

Additionally, on `mod_watch`, switched `restart` from `False` to `True` since that was what was being done before switching to explicit keyword arguments when calling `running`.
Deprecate `runas` usage on `salt.states.rvm`. Refs #6961.
Deprecate `runas` usage on `salt.states.rbenv`. Refs #6961.
Include `user` and deprecate `runas` on doctrings for `salt.states.rvm`. Refs #6961.
Deprecate `user` usage on `salt.states.rabbitmq_vhost` in favor of `owner`. Refs #6961.
Deprecate `runas` usage on `salt.states.postgres_user`. Refs #6961.
Fix doctrings and warn message for `salt.states.rvm`. Refs #6961.
Fix doctrings and warn message for `salt.states.supervisord`. Refs #6961.
Fix doctrings and warn message for `salt.states.rbenv`. Refs #6961.
Deprecate `runas` usage on `salt.states.postgres_group`. Refs #6961.
Deprecate `runas` usage on `salt.states.postgres_database`. Refs #6961.
Deprecate `runas` usage on `salt.states.npm`. Refs #6961.
Deprecate `runas` usage on `salt.states.hg`. Refs #6961.
Deprecate `runas` usage on `salt.states.git`. Refs #6961.
Deprecate `runas` usage on `salt.states.gem`. Refs #6961.