Fixes #3214: Multimap get & remove should return correct collection type

Fixes https://github.com/hazelcast/hazelcast/issues/3214

- Currently multimap get & remove always return list type. With this fix, they should return correct collection type depending on the configuration of multimap's value collection type.
You are passing in the collection + passing in the collection.size. Why is the size not determined based on the first argument so you can say:

```
Collection<Data> collection = createCollection(responseCollection)
```