Refactor NeedleMap into an interface, to be able to have more than one implementations
initial implementation of a CdbMap, tests still fail - probably because of deletion handling