Adding support for S3 as a fileserver backend
Update s3fs.py
Update s3fs.py
Minor cleanups
[WIP] added cache expiry and fixing hashing
[WIP] File hashing and caching now working

Now just file_hash() and file_serve to fix up. Also need
to add some cache clean out code so old stale files will
be cleared when they are deleted from S3. update() seems
like a good place for this.
Feature complete s3fs.

It has proper file hashing, file caching, and it uses the same
credential settings as the other s3 utils/modules
call pkgin with full path avoids troubles when upgrading
Fix default group checking in user.present, Fixes #4903
Refine default group checking

We don't want to just ignore the default group -- we just don't want to
try to remove it if it's in the user's group list and not in the state's
group list
make ext_pillar vulnerability even more correcter

fix "varsions" typo
Merge pull request #4979 from cvrebert/patch-1

make ext_pillar vulnerability even more correcter
Merge pull request #4977 from basepi/groups4903

Fix default group checking in user.present, Fixes #4903
Url encoded filename to fix handling of files with spaces
dir_list() implemented, fixed a few minor bugs

Still to implement file_list_emptydirs()
Add mine to toc, fix #4963
Merge pull request #4960 from Learnosity/s3fileserver

S3 file server backend support
Added salt.fileserver.is_file_ignored() support
Add virtual function for postgres user per #4967
Only load postgre_database state if postgres installed

per #4967