[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.
Most implementations of this interface will extend BaseDatabaseMeta, but I'm not positive they absolutely need to. @mattcasters is the addition of this interface method ok for a minor release (5.3 vs 6.0)?