Add TickGenerator.

TickGenerator sends a Tick message to itself with interval.
TickGenerator is self-typed trait for Actor, so it have to be mixed with
Actor.

TickGenerator add hook on postStop of Actor, but self typed trait cannot
call the method of mixed trait. So TickGenerator extends PostStopCaller
that has only one abstract method postStop.

TickGenerator's postStop method is abstract, because TickGenerator's
super is PostStopCaller and it's postStop method is abstract method.
The class who mixes TickGenerator must implements postStop. And it is
not a problem, because TickGenerator is self-typed trait of Actor.
Make ZooKeeperLauncher use TickGenerator.

Currently ZooKeeperLauncher use their own tick scheduler. This patch
makes ZooKeeperLauncher use TickGenerator instead of use their own tick
scheduler.
Make MongoDBLauncher use TickGenerator.

Currently MongoDBLauncher use their own tick scheduler. This patch makes
MongoDBLauncher use TickGenerator instead of use their own tick
scheduler.
Make SystemMetricsSupervisor use Akka's execution context instead of Play's one.
Make SystemMetricsSupervisor use TickGenerator.

Currently SystemMetricsSupervisor use their own tick scheduler. This patch makes
SystemMetricsSupervisor use TickGenerator instead of use their own tick
scheduler.