MNT : removed code deprecated in 1.4

no longer accept positional pos value
MNT : code linting

use descriptive name in generator rather than `_` even if
it is going to be dropped
BUG : use kwargs if both handles and labels passed

If both handle and labels were passed to Axes.legend
they would both be discarded in favor of the auto-generated
handles/labels.

Also added a warning that if mixed positional/keyword arguments
are used (something is going to be ignored).
TST : add tests for the changes on this branch
BUG : fix typo in warning
DOC : add api changes entry for code removal
Merge pull request #3943 from tacaswell/legend_deprecate_removal

Legend deprecate removal + cleanup