Refactor information template parsing to better support multiple templates

* handle classnames as well as ids
* prioritize templates based on their type (e.g. {{Photograph}} is more
  relevant than {{Artwork}})
* return the number of templates with author (Artist) fields as AuthorCount
* ignore {{Book}} templates
* fix an unrelated test that was incorrectly named and did not run

Bug: T75332
Bug: T74084
Bug: T74081
Change-Id: I011c195fb4b32560e70cb36d2a9a780ef3f6a4ba
Parse {{Nuke}} templates

Nuke templates on Commons provide a link only visible to administrators
for convenient deletion of the file; find such links and extract
the reason parameter from them.

Bug: T71389
Change-Id: I849674af96cc3a781f87075e5cf823ac19ce7a3e
Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/865
Add tests for verifyAttributionMetadata()

Change-Id: I331e8b87842c71c255db71155d36a6121d487567
Merge "Refactor information template parsing to better support multiple templates"
Merge "Parse {{Nuke}} templates"
Merge "Add tests for verifyAttributionMetadata()"