PEP8 fixes from PyLint
Modify pack_pkgs() to return name/version pairs

This is in preparation for #3278. This commit preserves backwards
compatibility for providers that have not been updated to support
specific version numbers the "pkgs" argument to pkg.install.
Make version specification work with "pkgs" (yum)

This makes yumpkg{,5}.py ready for #3278. It also makes version
specification for single-package installs work in yumpkg5.py.
Check "version" kwarg after parse_targets
PEP8 fixes from PyLint
Fix pkg.install for one-pkg install w/out version

This fixes a bug I introduced in a commit earlier today, which would
affect modules I've been working on to prepare for #3278 (yumpkg,
yumpkg5, and apt). A traditional single package install would fail
if a version was not specified.
Make version specification work with "pkgs" (apt)

Also a minor bugfix in available_version and miscellaneous PEP8 fixes.
Add version specification to zypper

This commit introduces version specification to zypper, as well as
prepares it for #3278.
Docstring updates to reflect new features
Minor fixes to tonight's zypper changes
Add version specification to pacman

This commit introduces version specification to pacman, as well as
prepares it for #3278.
Rework version comparison to be more user-friendly

This commit touches a lot of files, but almost all of them refer back to
the common code written in pkg_resource.py.
Merge pull request #3469 from archtaku/version_audit

Prepare pkg providers for #3278