Refactor how Application objects work.
Fix object initialization order.