[SPARK-1021] Defer the data-driven computation of partition bounds in so...

...rtByKey() until evaluation.
`valRD` is a kinda confusing name.  I think the convention would be to name it `_rangeBounds`.   Eg.

https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/FutureAction.scala#L111