feat(pagination): adds an "update" attribute for a callback that is invoked when the page is about to change

The callback gets invoked before the view value is set. If the callback returns a promise, the view value is set after the promise resolves. This allows the user to trigger the loading of paged data and let the pagination reflect the new state *after* the data has finished loading.