Feature/devise branch

można użyć validates. Poza tym to nie sprawdza, czy jest uniq. Zastanówcie się w drużynie czy email jest case sensitive lub nie.