Fixing the test case concurrency issue. 

Test cases share one single MockClock object, which breaks test case. In this change, I convert the MockClock to class and all MockClock object references to instance of MockClock.