First version, for evaluation. Added text animation. Code was cleaned. Added TODO in code, where in my opinion, code can be impruved.