First implementation of Repository
Create EmailAddressRepository and its interface.
Implement DIFactory to generate the real instancese easily
Make use of DIKernel in NormalUserController
Make use of DIFactory in ViewModel
Make use of DIFactory in ViewModel(add missings)
Implement NormalUserRepository#All
Add Dispose in AbstractRepository(do nothing, but logging)
Extract and concentrate the Repositories in ContextRepositories class and its interface