app.py is now just a simple script for argument parsing and launching the 
application.  All logic has been moved to a new ApplicationController class.