Added SystemTime/TestableSystemTime to facilitate time-based tests