Saint Guilhem le Désert, cité médiévale