a time manipulation library