slough of general changes to the app

_This is a bunch of small changes to the app. Each can be made as a separate PR, if you like._

Most changes focus on bringing the generated calendar feed more in line with the iCalendar specification. Such commits are:

- 6a30f6d
- 491066f
- 045d3de
- 6a2a476

Additionally included is a pedantic code quality change, 30862c0.

More information on each change and its reasoning can be found in the commit messages.