Add summary for all trips (to be given to WIMP)

Add a WSC-viewable summary of all trips, with pertinent medical
information.

The WIMP view makes a large number of SQL queries. It could be improved
upon, but this page isn't heavily viewed, and it keeps the code simpler
to leave unoptimized.

As ensuring safety lecture attendance is the responsibility of leaders
and the WIMP, include a read-only lecture attendance field in tables.
Appropriately leverage class-based views

When initially writing class-based views, was unaware of built-in
methods supplied by TemplateView, and access to `request` as a field.
Rewrite methods that didn't take advantage of these.
Add interface for specifying lottery pairs

Allow participants to select themselves as being part of a pair. This
selection must be reciprocated (guards against accidental, malicious, or
otherwise unwanted pairing).

For now, this has no effect on the lottery algorithm itself.
Correct site domain

Domain shouldn't be the path to the root of the site, but the domain its
hosted on. This fixes some allauth messages.
Don't mandate lecture attendance for lottery

It's up to the WIMP and trip leaders to ensure lecture attendance. If we
trust the lottery algorithm to ignore people who haven't attended, we
may accidentally exclude some people who attended but weren't marked as
such.
Add support for pairs in the lottery algorithm

Rework participant handling into class-based system (function was
getting too unwieldy).
Change lottery times

Lottery should be run between 6 am and noon on Wednesday. If it's run
after noon on Wednesday, signups will still be set to open at noon on
that day (not noon of the next Wednesday, as previous behavior
dictated).