Initial stab at time_message_gen unit, untested but compiles