[WIP] I at overhaul MK II

This implements BevapDin's suggestion of a wrapper class that allows callers to modify items on the map easily without exposing direct access to the underlying container.
Shouldn't this be a back_inserter or something. The current code crashes. And the next lines moves from fpos to fpos (source==target). Actually, fdest is not used at all.