The Costa Brava is home to five fishing villages that are perfect for a stay combining sea, history and gastronomy.