restructured API to support moving iterators from CondWriter to Condition