add support for unique constraints, serialised field names, and builk insert in the CP