rename unordered for what it is rather than what it's currently used for
move target logic into ContainerMap & rename to emphasize mutation
avoid double lookups in maps