[WIP] Implements a paged route collection using a paged route provider (2)

Current work, not done yet
The reason why I have decided to not use a setter is that it could be really problematic if you change the amount somewhere in the iterator. it could be non-trivial to figure out how to reset the internal variables properly. maybe this is an edge case we don't have to take into account, though