Removed dead code.
Better encapsulation of logging code for lists and maps.
Refactored op tuples for container types.
Wrote contorl logic that specified *when* to log for maps and lists.
However, still need to specify VersionHelpers that actually perform
logging for lists and maps.
Lists now additionally keep track of their internal values' classes.  This is because for reconstructing data, we need to know data type.
Updated compiler and emit tests to pass class information into lists for reconstruction.
Removed unused constructor for atomiclist and used delegation for other constructor.
Removing dead code.
Refactored AtomicMap so that can delegate constructors.