Implement `if let`

Implement the new desugaring `if let` syntax.

Fixes #16779.
Oops, complete typo. Kind of surprised I didn't notice that.