Initial implementation of HDFSBackedBlockRDD.

This RDD pulls the block from BlockManager, if it exists in the Block Manager. If it is not found, the data is read from a file on HDFS.
why need streamCounter?? You can use `i` in `(0 until blockCount).map { i =>  .... } `