Add -min and -max.

@magnars, looks like the anaphoric macros are not included in the docs?

This pull request might not be completely finished. Right now, both functions takes a predicate as first argument and list as second argument and returns the **item** for which the predicate returned the smallest/largest value. Note that the item is returned, not the value.

I have two questions I would like to discuss:

1. Should the functions return the smallest/largest value or item? Now the item is returned and that is how it usually works for enumerable libraries.
2. We could add `-min` and `-max` that does the exact same thing as `min` and `max` and also add `-min-by` and `-max-by` that does what `-min` and `-max` does in this PR.

What do you think?