ENG-6071 Allow partition column and replicate/partitioning changes on empty tables

This has most of the code for unique indexes and other changes, but doesn't have the CatalogDiffEngine code or the supporting tests yet.
Use the existing typedef -- it's called LabeledCD just like its ilk: LabeledColumn, LabeledIndex, etc.
OK maybe this one's a little more cryptic than the others -- but DelegatePair makes me think "two delegates?"