timer : refactor virtual timer

Minimizing the dependence of between generic_timer and timer.
As a result, Unit testing is possible.
Merge pull request #131 from joohyun0115/v1

timer : refactor virtual timer