base sceletion of the app functionality ready. (code needs refactoring)