renaming getPdo to providePdo
refactor: replaced parsed table lists as nested array with proper value objects
refactor - use an upsert builder factory
interim refactor commit : tableInfo now contains list of tables
interim refactor commit : columns also extracted
refactor: extract method