Clone method update

Build up a hash of all fields to be cloned, including embedded documents, ensuring changes in the field configurations are maintained.