Abstraction-friendly constructor
copy columns to new CF