Knight, Knave, Commoner #2

Source

I got this problem from Rustan Leino, who got it from both Jim Saxe and Pierre Nallet.

I solved it and wrote up my solution.

Problem    

A king has a daughter and wants to choose the man she will marry. There are three suitors from whom to choose, a Knight, a Knave, and a Commoner. The three suitors know which man is which, but the king does not. The king wants to avoid choosing the Commoner as the bridegroom.

The king knows that the Knight always speaks the truth, the Knave always lies, and the Commoner can do either. He is permitted to ask one of them one yes/no question, and then must choose who gets to marry the princess. What question should the king ask and how should he choose the bridegroom?

Solution     Reveal