feat(dccd): add Support for ObservableList & ObservableMap

For now this is a first batch of changes for Observable support to use notifications for `ObservableList` & `ObservableMap`

Things missing from this PR:
- [ ] Test switching back & forth from List to ObservableList (same for Map)
- [ ] Test the canceling of stream subscription on record & group removal

The code is not expected to change so the PR is ready for review (only tests should be added)

Next steps (further PRs):
- Use notifications for obj.fields for objects,
- Investigate using two separate lists (notified, unnotified)