Initial upload

full commit of everything to public.
last change: implemented observer pattern for time