Intermediate commit:
- Arrange for the catalog schema to be made available during initialization
- Parse the catalog schema, build a transient PEDatabase for it, stuff it onto InformationSchemas
- Arrange for parsing of a view to work correctly prior to full initialization
- Add a single view implemented info schema table (generation_site).
- Start getting execution to work.

Current status:
- Restructuring LogicalSchemaQueryEngine to handle view implemented tables, then can get
  execution working.
- Show plurals is busted
- Figure out how to support show commands (likely adapt current structure)
- Need to break apart info schemas init into a catalog only (for catalog helper) and
  full.  This is required because currently we can't get to the catalog schema without
  hibernate initialization (so upgrade is currently broken).
Get generation_site view to work:
+ Modify Emitter to codify rules for emitting TableInstances so that we emit aliases or
  table names appropriately.
+ Arrange for some new emitter options to avoid emitting a db token.
+ Struggle with typing in info schema; this is temporary, once the conversion is complete
  one half of the hierarchy will be removed.
+ Arrange to defang part of view processing when parsing for infoschema.
+ Switch to using a fronting schema for views.
+ Add a builder for info schema views, add a view (generation_site)
+ Refactor out execution slightly to handle view based processing.
  Arrange for the LogicalSchemaQueryEngine to return either the current result sets
  based result, or else a FeatureStep.
+ Fix some corner cases in the dml view transformer.
Merge branch 'master' into kanzaros_eh
More info schema restructuring:
+ Arrange for info schema tables to be backed by one of two different class hierarchies, the computed and direct hierarchies.
  Try to make everything behave the same way.  The backing class hierarchies are the adapters for the info schema columns and
  tables.
+ Changed a bunch of class names to be less unwieldy.
+ Add a new builder that replaces existing tables as they are migrated.
+ Added more state around emitting table instances in the emitter.

The upgrade is now broken, will address after migrating some more tables.
Migrated some more info schema tables to use views:
+ character_sets, removed annotations
+ collations, removed annotations
+ dynamic_policy, removed annotations
+ engines, removed annotations
+ show keys, information_schema.{referential_constraints,table_constraints,key_column_usage}, removed annotations

Other changes:
+ Modify emitter to support direct info schema statements (for debugging)
+ Modify the info schema gold generation to be alpha.  This completely breaks the upgrade.
+ Added some generator classes for the direct views.  Use them for the replacement info schema entries.
+ Add support for variables into the view defs.  These are used in the show commands to pass in
  the like expr, where exprs, also for scoping.
+ Added a custom show keys implementation to handle temporary tables.
+ Add a projection override in ProjectingExecutionStep, used in show commands.
+ Add support for merging order by clauses in the view transform.
+ Added a big test for column declarations.  Currently disabled.

This is a checkpoint commit.  Next up is reworking user_column.
PE-1648 - Initial support of NATURAL JOINs.
PE-1648 - NATURAL JOINS rewrite using USING() clause.
PE-1648 - Intermediate commit.
Merge branch 'master' of git@github.com:Tesora/tesora-dve-pub.git into pe1648
PE-1648 - Rewrite NATURAL [LEFT] JOIN of two tables as an INNER JOIN or
a LEFT JOIN with a USING clause that names all columns that exist in
both tables. The rewrite takes place before other join transformations.
PE-1648 - Fix unit test.
Intermediate commit.

Restructured UserColumn to use a bitfield for various flags rather than separate values.
Copy the bitfield around between ColumnMetadata and PEColumn.  Arrange for the bitfield
to contain the previously derived attributes for key part, unique key part, primary key part.
Use the bitfield in the migrated infoschema queries for show columns, columns info_schema table.

Todo:
- An upgrade
- Multitenant mode
- show full columns
- migrate the tests that load the catalog directly (i.e. via metadata file) to
  instead load through the front door.
Merge branch 'master' of git@github.com:Tesora/tesora-dve-pub.git into pe1648
Migrate persistent sites and site instance.
Commented out a stray debug print stmt.
PE-1651 - Added 'character_set_database' and 'collation_server'
global/session variables.
Fixed unit tests broken by the previous commit.
PE-1652 - Order number literal converters by type size. When a literal
conversion fails with a NumberFormatException try the next converter
that handles that numeric type.
Added a method overload.
PE-1561 - (Generic)SQLCommand now takes (and requires) a Charset to
perform String
-> byte[] conversions.
Normally the caller supplies a connection/schema context on which
the command executes. The Charset is in that case picked-up from the
'character_set_connection' SESSION (GLOBAL) variable on that connection.
The Charset may also be explicitly specified (good for commands where
Charset does not matter like
SQLCommand(CharsetUtil.UTF_8, "")).
Default DVE 'character_set_connection'/'collation_connection' pair is
'utf8'/'utf8_general_ci'.
This change enables UTF-8 schema object names. In order to enable
storing UTF-8 names in the catalog the catalog connection string now
takes additional parameters:
useUnicode=true
characterEncoding=utf8
connectionCollation=utf8_general_ci