These use the boost posix_time and gregorian calendars. However, its pretty yucky - the current date_time lib doesn't provide convenient access to the millisec time, and so we convert to durations by subtracting the epoc. Also, the underlying rep is microsecond, so we divide by 1000 to get milliseconds (which is what java uses).
we should probably use the templates explicitly to implement our own class.