Here's a complete rundown of where to stay on the beautiful Balearic island of Ibiza: which town, resort or beach is for you, and the best hotels and villas.