adding dialog functionality, not yet working, also basic ui layer