Making DataLists & DataGrids safe for variable shape API responses

- Refactoring 'utility.walk()' to be 'safe'
- Fixing 'list.refresh()' such that it can deal with 'undefined' returned from 'utility.walk()'