Adapts a RecordBatch to conform to target_schema, verifying that each target field
type contains the incoming column data type (as verified by arrow::datatypes::DataType::contains)
and transforms the metadata/types of differing columns to match target_schema
without copying primitive buffer data.