Add a HadoopTableReader, for scanning tables stored in Hadoop.
Add a HeapTableReader, for scanning tables stored in the Spark block manager.
Add a TachyonTableReader, for tables managed by Tachyon.

Partitioned tables in Tachyon are not yet supported, though.