There might be a way to cache the positioning calculation so that newly added pages can "pick up where the previous page left off." Seems like I found a problem with that approach, though I can't remember what the problem was.