Actually define StorageFormat and the mechanism to register it.
Keep track of unknown fields so that things still serialize.
Allow setting storage in DDL.
Requires some care getting that storage copied into the new object at just the right time.
That uncovered another place that was using SchemaFactory wrong.
Another problem uncovered by those.
Let format decide how many instances to have.
React to merge.
merge MMcM: Actual storage formats and their registration

Merge pull request #1007 from MMcM/sql-layer/storage-format-registration
https://github.com/FoundationDB/sql-layer/pull/1007
Implement a Protobuf decompiler, which will be needed for testing and integration with languages without dynamic messages.
Add custom options to protobuf descriptors to hold meta-data that a decoding app outside SQL layer would need.
Generate Protobuf from AIS.
Add a test program. Needs to be an IT to get full DDL capabilities.
Make sure added columns have UUIDs.
Copy/paste error had sorting wrong.
Use TClass instead of Type.
merge MMcM: AIS to Protobuf

Merge pull request #1008 from MMcM/sql-layer/ais-to-protobuf
https://github.com/FoundationDB/sql-layer/pull/1008
Add repeated field for each child table in parent. Not populated in normal group rows, but special range access could do so straightforwardly.
merge MMcM: Add repeated field for each child table in parent.

Merge pull request #1009 from MMcM/sql-layer/ais-to-protobuf-2
https://github.com/FoundationDB/sql-layer/pull/1009
No cleanup for alter
No cleanup for createIndexes