restructure app, update testing, add edit functionality