Handles dates correctly

datetime.datetime has no tz info. We use LocalDateTime, then convert to a ZonedDateTime via toDateTime.