I may be biased by my total ignorance of why a catalog needs to wrap its one database in an otherwise useless cluster object, but can we keep VoltCompiler similarly ignorant by having a CatalogSchemaTools.toSchema(Catalog) entry point method to hide all this pseudo-looping.