Added a top level paginator

This changes Model.all to use the pagination feature to truly fetch all of the records.

**NOTE** This is not a light change, the actual LOC is super super small, and should be non-breaking, as you can see I have altered *no* tests other than the count of students coming back from your API with the DEMO_KEY.

But it could create more server load and change expectations of what actually comes back for people.
Would prefer if rather than creating a new `collect` method in `pagelist` we just did the accumulation in `all`. `collect` is already synonymous with `map` in Ruby collections, so this naming makes it less obvious what's going on.