Semi- and fully synthetic carbohydrate vaccines against pathogenic bacteria: recent developments