We're always storing a timezone-naive `datetime` with a UTC value in the database. PostgreSQL is the only database we test with that supports timezones and it was treating the value as a local time, subtracting the UTC offset, and later returning a timezone-aware `datetime` object with the local timezone and the wrong value. Since we need to support at least SQLite and PostgreSQL, it's easier to just handle everything at the application level and always work in UTC.