Added unique checks for email, slugs and roles
Changed notifications to loop withErrors instead of a generic error message

This is an important update because before a user could change his/her email to one that was assigned.