currently I used ``states``, ``classes`` and ``labels`` - ugh.
For the latent dynamic CRF I needed to distinguish output labels from latent states.
I think we should get rid of either classes or labels. not sure we can get rid classes. It is quite unnatural to talk about states in a multi-class svm. but the current code is indeed ugly in this respect.