Added merge method in Collection

* Also implemented ArrayCollection merge method
If it's not in the interface, then it is not useful, since we're forcing people to type-hint against a concrete implementation, causing issues on the longer run.

We don't want that in first place