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.
not focused existing code changes, there are many like this.