New UserFriendships can only be created if one does not already exist between a user and a friend.
(There's still a bug - the validation only checks for a unique combo of user and friend, but if another record exists where the roles are reversed, the validation doesn't prevent the record from being persisted in the database)