[PDI-12881] Refactoring for make SQL parsing more correct and more flexible

Refactoring for 5.3
I didn't change org.pentaho.di.core.sql.SQL and org.pentaho.di.core.jdbc.ThinUtil because they are not only SQL parsers, but some kind of "wrapper" around SQL command for extract files.
Please run CheckStyle on this commit to ensure no violations