teleological/quality_time
QualityTime extends Ruby's standard Time and Date classes to facilitate safer and more deliberate manipulation of chronological and calendar values, especially for values that precede the introduction of the Gregorian calendar.
RubyMIT