Separação em camadas (virtuais) e utilizando o NInject.
Merge branch 'di' into development