Should call get_val on outer_list outside of each element deserialization.  If do not, then will never return correct internal value for empty lists.
Added deserialization code for atomic maps.
Added deserialization code for nonatomic maps.
Deserialization code explicitly listens for map.