moved invitation validations to an InvitationValidator