`EqualityComparer<object>.Default()` will be slow, will fall back to
`object.Equals()` which may do the right thing, the wrong thing, or be
useless due to using reference equality semantics.
In practice in this call site it likely doesn't matter anyway but I'd
rather be future-proof than not.
This change refactors `GetAdjustedDisplayDifficulty()` and
`GetBeatmapAttributesToDisplay()` in two ways:
- Both methods now accept `IBeatmapInfo` instead of
`IBeatmapDifficultyInfo`. This is done in order to make mania key
count display to work, wherein `IBeatmapDifficultyInfo` is not enough
to calculate the final key count.
- `GetAdjustedDisplayDifficulty()` now applies all
`IApplicableToDifficulty` mods itself. I did this after noticing that
every real consumer of this method had to do that themselves for very
little reason.