[MRG+1] Implements Multiclass hinge loss

Implements multiclass hinge loss. Fixes #3451 
at present this will fail if `pred_decision` is a list. (I think), You need to do `check_array(pred_decision, ensure_2d=False)` somewhere, and replace `len(pred_decision.shape)` by `pred_decision.ndim`