set up app structure