Missing deps

Implements feature to be used in builder as discussed
```ruby

 versions = {:koji => ['1.0', '2.0', '1.0'],
                    :git  => ['3.0', '3.0'],
                    :yum  => ['2.0', '1.1', '2.0']}
        described_class.should_receive(:versions_for).and_return(versions)
        expected = {:koji => '1.0',
                    :git  => '3.0',
                    :yum  => '2.0'}
```

I still don't understand the rationale.  If koji has 1.0 twice, is that just builds and rebuilds at the same version or does that also include multiple architectures?  If git, has 3.0 twice, is that just two branches in git with 3.0?  And I guess with yum, 2.0 twice means multiple releases for the same upstream version, right?

Does the "frequency" of a version appearing in a source indicate some level of stability, popularity, maintenance level, or something else?  Does the "frequency" of a version indicate the same thing across koji, yum, and git?

I mean, why would someone call these methods?  What would these methods facilitate?  Why are we choosing the most common version number from the source?