Core API: CompositeValueModel addAll->put (#632).

BREAKING CHANGE

The Core API's `CompositeValueModel` has 2 changes:

1. The `add()` methods does *not* check for multiple values anymore. Values can be added twice.
{{{
add(String childTypeUri, TopicModel value)
}}}

2. The `addAll()` method is renamed to `put()` and has a changed semantics: the passed values override possibly extisting values (as the single-valued put() counterparts do) instead of adding them.
{{{
addAll(String childTypeUri, List<TopicModel> values) -> put(String childTypeUri, List<TopicModel> values)
}}}

Fix: if the passed list is empty, after calling `put()` there is still a new entry in the `CompositeValueModel` (its value is the empty list).

See #632.