Extract Payload for enum cases having associated value

For the record, the original pitch from @stephencelis did explore the consequences of SE-0155. I'm sure it's worth a re-read.

Edit: Oh, and they also thought about the funny case of Never payload :slight_smile:

enum Bizarre {
    case normal(Never)
    case weird(String)
}

// Should we allow this?
let alice: Bizarre = ...
alice[keyPath: \.normal] // Or alice[case: .normal] - this is the same