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

...rtByKey() until evaluation.
also was assuming readObject might be called in multiple threads.   Can that happen?