Specifying Timer threads to be run as daemon threads.

The Timer objects in these classes were not cancelled, thus by default, JVM would not exit and waiting those active non-daemon threads forever.

Implication of this change: JVM will not wait for all scheduled tasks.