(PUP-2182) Fix yum provider virtual_package feature.

The yum package provider was installing virtual packages even when
allow_virtual was default or set to false.

The fix is to do a "yum list" command before doing an installation whenever
allow_virtual is not true.  The list command will fail on virtual
package names.  This will prevent the package from being installed as
expected.

The query we do to check for installed version has also been limited to
only when the user has specified a version string for the ensure
property.