Fix how AvaticaResultSet finds columns by ordinal and by label.

Remove the map of columns by name. In common cases, such as if there are fewer than 30 columns, it is more efficient to scan a list.

Convert some public members of avatica classes to protected or package-protected, adding the Trojan class to allow access by providers.
Fix https://github.com/julianhyde/optiq/issues/85 "Adding a table to the root schema causes breakage in OptiqPrepareImpl".
Fix JDBC column, table, schema names for when the table is not in a schema of depth 1.