feat(change_detector): add a way to inspect records and record ranges

Due to the optimizations used in Record, troubleshooting change detection issues is difficult. This PR adds two functions: `record.inspect()` and `record.inspectRange()` to make it easier.
Could you call `headRecord.inspect()` and follow the `next` pointer. Otherwise records will be inspected multiple time IIUC.