Changed AbstractUser interface hierarchy

AbstractUserInterface now inherits from symfony UserInterface.
Before this change, only AbstractUser was implementing UserInterface.
CustomerInterface and AdminUserInterface were extending
AbstractUserInterface, making it possible to inject into collaborating
objects a User that does *not* implement UserInterface.