From the medieval town of Rupit in Catalonia to sunny Sóller in Mallorca, these are 10 of the most beautiful towns in Spain.