[WIP] feat(Change Detector): Add support for collection deep watch

**Work in progress**

Add support for deep watch (collections are normally watched by ref only).
Right, `ListChanges` is probably a better name. But may be it should be `IterableChanges` in the end (`Iterable` are not supported for now)