refactoring : make BaseApplication usable without creating derived classes out of it.

Signed-off-by: Kim Kulling <kim.kulling@googlemail.com>