afterLoad is something very specific and it is not used in all code, IMHO

```js
function doLoad(list, items, callback) {
   window.addEventListener('listRendered', function handler() {
     window.removeEventListener('listRendered', handler);
     callback();
   };

   list.load(items);
}
```

Although your code works pretty good so up to you if you want to implement my idea or not :)