[SPARK-3575][SQL] Removes the Metastore Parquet table conversion hack

This PR tries to remove the Metastore Parquet conversion hack by moving the conversion logic to `HiveMetastoreCatalog`, i.e., convert `MetastoreRelation` to `ParquetRelation` when we find that the Hive table is backed by Parquet, and make the converted `ParquetRelation` inherit the original Hive schema. As a side effect, `spark.sql.parquet.binaryAsString` can be removed since Metastore field types are now reserved.

TODO

- [x] Add tests
- [x] Fix partitioning tests failure
- [x] Code cleanup

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/apache/spark/3441)
<!-- Reviewable:end -->

Wait, where are we doing partition pruning based on predicates now?