SPARK-2565. Update ShuffleReadMetrics as blocks are fetched

Can we make this and depsShuffleReadMetrics private again, since they should only be updated through createShuffleReadMetricsForDependency() and mergeShuffleReadMetrics()?