fix dependencies
support the @Timer annotation
add builder