Cape Town voted best city in the world for 7th year running