[SPARK-2871] [PySpark] add `comp` argument for RDD.max() and RDD.min()

RDD.max(comp=None)

        Find the maximum item in this RDD.

        @param comp: A function used to compare two elements, the builtin `cmp`
                     will be used by default.

        >>> rdd = sc.parallelize([1.0, 5.0, 43.0, 10.0])
        >>> rdd.max()
        43.0
        >>> rdd.max(lambda a, b: cmp(str(a), str(b)))
        5.0

RDD.min(comp=None)

        Find the minimum item in this RDD.

        @param comp: A function used to compare two elements, the builtin `cmp`
                     will be used by default.

        >>> rdd = sc.parallelize([2.0, 5.0, 43.0, 10.0])
        >>> rdd.min()
        2.0
        >>> rdd.min(lambda a, b: cmp(str(a), str(b)))
        10.0
Yes, using `comp` here is bit confusing.  The builtin `min` use `key`, it will be better for Python programer, but it will be different than Scala API.

cc @mateiz @rxin @JoshRosen