Separated out the app to multiple files.
New broken out app files