The fortress city of Campeche on Mexico's Yucatan Penninsula is a charming colonial town and UNESCO World Heritage Site.