Move CREATE TABLE/CTAS analysis to a new method.

This includes adding a new QueryBlock that's used to store detected cache modes.

Also, renamed MemoryTableDesc to MemoryTable.
Return union of all Hive-partition RDDs for SharkEnv#unpersist() and MemoryMetadataManager#unpersist().

Also adds Option[RDD[_]] in MemoryTable to represent an empty table.