Decoupled the applicaton and Renderer

Decoupling the application and renderer classes has created a neater
development environment - which will pay off later when the classes are
much bigger.