ENH annotate metrics to simplify populating SCORERS

This patch makes `needs_threshold` and `greater_is_better` an attribute of each metric, rather than a `Scorer` constructed from them. I am not sure these are the correct names, but their use means information isn't duplicated in `scorer.py`. (It also would allow for composite scorers to be easily constructed assuming their support in #1768 is granted.)

Perhaps there should be other machine-readable annotations on our library of metrics:
* lower and upper bound
* `is_symmetric`
* `multiclass`/`binary`/`regression`
but their application is not clear to me.