CAUTION - Installation cannot be unloaded, save your image before loading this package.
The traditional implementation of DateAndTime uses instance variables 'seconds offset jdn nanos' and calculates its magnitude based on those variables in conjunction with the local TimeZone.
Replace this with an implementation using instance variables 'utcMicroseconds localOffsetSeconds'. This represents time magnitude as elapsed microseconds since the Posix epoch, with localOffsetSeconds representing local offset from UTC. The magnitude is used for comparison and duration calculations, and the local offset is used for displaying this magnitude in the context of a local time zone.