I agree with you guys.
The only thing that I did was to rename `timerWithTarget` from `createWithTarget`, because `timerWithTarget` is not C++ friendly.

I will send another PR later.