split out the application into individual files