contact_id is added automatically, should not be set here.
appropriate function call to clear the custom field list cache.
properly clear cache of available fields to avoid invalid field name
error.
avoid problems with partially upgraded sites.
more tests to ensure we don't get upgrade conflicts.