New map fixes

- Does not yet include serialisation logic in the C++ code, but does add the basic MapPairs class
- C++ build is still broken because "M" and presumably "K" classes are still being used:
- Java MapPairs updated as discussed
- Map is no longer a primitive

```
/tmp/bn/cpp/lib/ome/xml/meta/AggregateMetadata.cpp:99:10: fatal error: 'ome/xml/model/M.h' file not found
#include <ome/xml/model/M.h>
```