Issue172 add contact simplify de serialization

Closes #172.
Please merge first PR #171.
Maybe because the definition does not need to know the implementation? It's the same reason you should return a "Map" instead of a HashMap.