add compare, isPast, isFuture (all with precision)