finished app, should be working but not tested on a device yet