Fix deduplication of published POM dependencies This commit reworks how dependencies are de-duplicated during POM file generation. De-duplication was introduced as part of 4d97d0b (publish resolved versions).
However, only using group+name is incorrect, we should use more fields like the classifier or target configuration.
Technically speaking the solution implemented in this commit is still wrong, because we should _semantically_ deduplicate dependencies (some may be mergeable, some not).
It's a non goal of this commit to fix the fact that Gradle Module Metadata does _not_ represent classified dependencies. This means that in Gradle metadata 2 dependencies on 2 different classifiers will generate 2 identical entries _without_ classifier information.