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.
Table %s may not be made replicated because it contains data/tuples/is not empty?