feat(ChangeDetection): convert Record.mode to a bit field

### First commit

`Record.mode` changed to a bit field:
- do not consume a field for `disabled` (boolean),
- more flags can be added (implicit receiver, collections, ...) without increasing the size of a `Record`

### Second commit

Previously, setting the context of a `RecordRange` would update all the records.
After this commit, only the context for "implicit receivers" records will be updated.
- This is more correct,
- It will be needed to add support for shallow watches