Does `Dictionary.Keys.contains(_:)` have `O(1)` time complexity?

Hey Hamish. Great find!

Do you know why this was implemented in this way? What's the advantage over having types merely provide their own contains(_:) function?