Saint-Macaire, cité médiévale au riche patrimoine