REworked the internals to use DateTimes instead of ints with a time offset