Implements Multiclass hinge loss

Implements multiclass hinge loss. Fixes #3451 
However I'm almost tempted to allow multiclass only if `labels` is provided or y_true contains all integer class labels from 0 to `pred_decision.shape[1] - 1` (i.e. `y_true` must be encoded; otherwise the `LabelEncoder` convention can create unexpected behavior)