[SPARK-2406][SQL] Initial support for using ParquetTableScan to read HiveMetaStore tables.

This PR adds an experimental flag `spark.sql.hive.convertMetastoreParquet` that when true causes the planner to detects table that use Hive's Parquet SerDe and instead plans them using Spark SQL's native `ParquetTableScan`.
If we execute setup queries in the constructor, will we introduce any issue to mvn tests? It looks similar with what we originally did for `HiveTableScanSuite`. Then, we have to use `createQueryTest` to atomically run setup and execution.