On an island every inhabitant is either a knight, who always tells the truth, or a knave, who always lies. You meet four inhabitants, A, B, C and D.

A says: "At least one of C and B is a knave."
B says: "A is a knight."
C says: "D is a knave."
D says: "C and B are of different kinds."

Which of A, B, C and D are knights and which are knaves? Show the reasoning that rules out every other assignment.
