Paginate events

Added code for paginating the display of all events (addresses #13). The all_events view can now take two optional query parameters:

- page: The page number to display (default first)
- items_per_page: Integer number of items to display (or "all", default 25)

I also added some unit tests to make sure the response is paginated by default, and to make sure we handle some edge cases with the two new query parameters properly.
I would move this constant into models.py and call it `ITEMS_PER_PAGE`.