Created AdminUser entity and provider

* Created entity, factory, repository
* Created provider for adminuser
* Also refactored the way this providers are built. Using abstract class
* Splitted configuration in several files on UserBundle package
* Created both abstract user registration event, and specific type of user event