Added RecordSetWriter/Iterator, FieldMap

Added RecordSetWriter and RecordSetIterator to support writing and reading RecordSet objects without having to keep all of the records expanded in memory at once. Added CleanXMLStreamWriter to support that.

Added FieldMap to simplify dealing with record and image browse data field values and associated display labels in record descriptors.

Added MarshalUtil to simplify going to/from XML. (Helped with unit tests on the above, and is generally helpful).