Among these four people there is one knight (who always tells the truth), a liar (who always lies), a knave (who tells the truth and lies alternatingly), and a rebel. The rebel doesn't like the truth patterns of the other three, and will never follow the order of them. (So the rebel will say at least one thing false, and one thing true, but not in an alternating way.)

A: B is the liar.

C won the race.

I came in second.

B: C is the knight.

I came in last place.

C came in second.

C: D is the knave.

A won the race.

B came in last place.

D: B is the rebel.

C came in second place.

B came in third place.

Using this information, what is each person's type and in what order did they finish in the race?