Implement `if let`

Implement the new desugaring `if let` syntax.

Fixes #16779.
That said, I will make the change, because this isn't something worth fighting for.