MJC-2:
 added DateProvider method to isolate date components
 added Transaction to implement comparable