added three step validation and duplicate prevention. bug with messages email is already taken