use TrainingMap in max margin code and more design of QP class
Merge branch 'refactor' of github.com:linqs/psl into refactor