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.
You cannot access sc in compute, as this runs on the workers, and sc is null there. 
Use `SparkEnv.get` to get the environment.