Document Timer class.
Enable custom period.
Factorize constructors.
Make internal methods public.