Small VersionChecker / other edge case fixes

Takes care of a few infrequent edge cases mostly in
VersionChecker but also in yum module.

Also introduces distinction between VersionChecker #version_for
which returns most relevant version in _each_ configured targed
and #version_of which returns most relevant version in _all_
configured targets
VersionChecker#missing_dependencies and #dependencies_satisfied?

Implements a few methods to perform extended upstream / downstream
cross-analysis and detection, comparing the specific requirements
in a gemfile to those in the configured build targets
Implements specs for Polisher::VersionChecker