add vcard validation courtesy of ezvcard (fixes #6)