The beginning of half-hour offset walkins

This doesn't really do anything yet, but I thought maybe we could try to avoid having one giant pull request of doom for this project. Don't delete the branch, I'd rather keep the project in one branch so we can share work that's not ready for merging more easily. Right now: makes a new EventType and lets you create one from the resources page.

Important deploy note: requires running esp.cal.models.install() before using this feature.
Also fixes some places where the code was relying on the order of EventTypes, because
that seemed like a bad idea.