[SPARK-2082] stratified sampling in PairRDDFunctions that guarantees exact sample size

Implemented stratified sampling that guarantees exact sample size using ScaRSR with two passes over the RDD for sampling without replacement and three passes for sampling with replacement.
I think the documentation is wrong. The bounds are not used as thresholds in sampling with replacement. The lower bound q1 guarantees that if sampling according to Pois(q1/n) the sample size is smaller than s, while the upper bound q2 guarantees that if sampling according to Pois(q2/n) the sample size is greater than s.