added TimeDurationModel that presents a duration as a human-readable
string