[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).
I have plan to add Object support (JS) to `MapChanges` (then it might be good to rename it ? `KeyValueChanges` ?)