Develop

Refactor Application class and make testable.