Scroll position is (roughly) retained

When clicking to view more pages, the scroll would always jump back to
the top. Now the scroll position is retained somewhat, though it is not
perfect. Since the scroll works by jumping to an item, we simply
calculate the closest item to where we are, and then scroll to that
position when the list has been regenerated.