Updating `datalist.pages()` to leverage closure scope & removing a mutation, fixing `element.destroy()` by sending the `Element` to `observer.remove()`, updating `observer.remove()` to use the same variables as `observer.add()` for consistency