[WIP] enhance `labels` and deprecate `pos_label` in PRF metrics

This intends to make the parameter `labels` clearly defined for the `precision_recall_fscore_support` family of metrics. This amounts to a fix for #1983, #1989 and #2094. As implied by the comment I have committed, labels will:
* determine the sort order when returning a result for each class
* determine which labels will be included in an average (newly allowing one or more negative/ignored classes in multiclass classification)
* by default all labels will be used, and there will be no special handling of binary classification

[x] Define and document intended behaviour
[ ] Tests for new `labels` functionality
[ ] Implement new `labels` functionality
[ ] Deprecate `pos_label`, and ensure `labels` is set correctly for legacy functionality
[ ] copy documentation to derived functions
[ ] Update narrative documentation