[SPARK-3343] [SQL] Add serde support for CTAS

Currently, `CTAS` (Create Table As Select) doesn't support specifying the `SerDe` in HiveQL dialect. This PR will pass down the 'ASTNode` into the operator 'execution.CreateTableAsSelect', which will extract the `CreateTableDesc` object via Hive `SemanticAnalyzer`, and then create the table
Do we have to pass the AST tree all the way down to the physical plan?