Restore underlying_id-based ordering for unit_map

This is done by turning the umap back into an ordered map,
getting rid of ilist and making lmap point to umap iterators.
Include map
Merge branch 'master' into unit_map_fixes
unit_map cleanups
Fix indentation
Merge branch 'unit_map_fixes'