[2.0.0] Changes in registering of modules

Some changes:
- registerAutoloaders is called after registering modules for all modules:
    * It low-cost operation, but very usefull: in multimodule application each module can autoload own classes.
- if in module class exists method 'initialize' it calles after registering
    * It can be used for registering own routes by each module

This two changes are steps to independent reusable modules. For example https://github.com/quantum13/cphalcon/blob/694bf70888c7254218a6d0aca99c94814ee34247/unit-tests/modules/objects/Module.php

- forward to another module #121 (registerServices called in each module in dispatch loop)
    * useful for https://github.com/phalcon/cphalcon/issues/121#issuecomment-45719826

- one backward incompatibility: di must be setted to application before registering modules
@quantum13 To be able to override if necessary,

`<Phalcon\Mvc\Application\DispatcherListene> dependencyInjector->get("Phalcon\Mvc\Application\DispatcherListener");`