First step of the big Application class refactorization

This class contained lots of code that should be put elsewhere.
This first refactorization applies the same model used by the
Silex microframework to register its service providers.

If this model works right, I'll apply it to the rest of the
services and I could also add the boot() method to the
ServiceProviderInterface to register event listeners (this could
simplify or even remove some plugins).