Deferred providers should be set before registering eager providers

Signed-off-by: Bryan te Beek <bryantebeek@gmail.com>

When registering an eager serviceprovider that needs a deferred serviceprovider, the application would throw an exception because the deferred serviceproviders were not yet set. 

eg. a package that has a ```/lang``` directory will try to load the ```translator``` class instead of using the deferred serviceprovider because the ```Application::deferredServices``` is still empty at the time of registering.