[SPARK-2594][SQL] Add CACHE TABLE <name> AS SELECT ... (Updated as per review comments)

Updated as per the review comments of Admin.
Previous pull request is https://github.com/apache/spark/pull/2381
Either way is OK. But eager caching is existed only for this feature, so it may look inconsistent  compared to other caching commands.