Prepare ebuild for multi-pkg support in pkg.latest

available_version and version now support an arbitrary number of
arguments.
Update pkg.latest to work with available_version

A minor tweak removing the version comparison logic from pkg.latest
since it has been decided that pkg.available_version will return an
empty string unless the package is a new install or there is an upgrade
available.
make pkg.latest state return data more consistent

minor verbiage tweak
Make zypper work with mutli-pkg in pkg.latest

Also made the update discovery more reliable. It was parsing "zypper
packages -i" before, which is basically a dump of all packages, and all
versions in all repos (even the ones older than the currently-installed
version). Instead, it now uses "zypper list-updates", which only shows
available updates. I put this code into a list_updates function that can
be run from CLI to show what updates are available for install. This is
probably a good general-purpose function to add to all providers at some
point.
some minor fixes to the contrib doc
Update shadow password docs with improved hash command
Merge pull request #3201 from archtaku/issue2906

Prepare ebuild for multi-pkg support in pkg.latest
Cut the number of dependencies in selinux.py
Merge pull request #3203 from techhat/selinux

Cut the number of dependencies in selinux.py
Add result field to service situation

Shoud be a fix for #3150, needs confirming
Correctly detect Amazon Linux
Merge pull request #3205 from techhat/issue3121

Correctly detect Amazon Linux
Getting #3123 working will take some more backend work...
Remove transitional code to clean up long dead bug in private

Key management, Fix #3025
Fix #2895
Don't chmod on Windows
Merge pull request #3204 from MTecknology/develop

Fixed bug in modules/debconfmod.py and added states/debconfmod.py
Merge pull request #3206 from UtahDave/fix_win_cmd

Fixes #2972  Don't chmod on Windows 
Fix #3194

We were still looking up data in the job cache! There is one more
function doing this I need to kill
Finish fixing #3194