Moved accounting for has_been_written_since_last_message to version objects.  This is because new class of variables for sequence local data do not have dirty elements, but must have version objects (to transmit their deltas).
Refactored code: base class of internal lists and maps (waldoReferenceContainerBase) now contains the bulk of the logic for deserializing data.  List/map specific code lives in helper overloaded methods.