FIX bug where hinge_loss(..., neg_label=1) would produce incorrect results

The following is bad (consider `neg_label == 1`, or `y_true.dtype == 'S1'` for that matter):
```python
y_true[y_true == pos_label] = 1
y_true[y_true == neg_label] = -1
```
The following are good:
```python
y_true = (y_true == pos_label) * 2 -1
```
or 
```python
orig = y_true
y_true = np.repeat(-1, orig.shape)
y_true[orig == pos_label] = 1
```
Hence I have deprecated `neg_label` in `hinge_loss`.