Moar paging

This branch adds paging on all the lists from district - schools, teachers, sections, and events (students was done in the previous pull request).

Not as urgent, so I took some time to do some refactoring as well.

The section.students list does not need the paging code because 'students' is a property of a section, not a separate API call.