Store vendor specifications by name only

There should not be duplicate vendor specifications in a VendorSet.
This allows polymorphism with GitSet for supporting PATH in a lockfile.
Parse PATH from a Gemfile.lock

This was missed because I am really tired and haven't run any of the
bundler tests against rubygems yet.

Part of #727