Update time_point and timeline types for a NamedTuple instead of dict in reporter.py
A NamedTuple might be better for the TimePoint and Timeline types. Dict is not a great data specification format - it is mostly useful during serialization. If the types will ever be read or written to file they could be 'upgraded' to a BaseModel.