when I went swimming with the dolphins we didn't have any dolphins so I would like to go back for it. In Stone down I stayed at the new-africa hotel, it is relatively cheap. Stone town is part of the old city, I basically visited the slave market, the museums and the market place in one day. There isn't that much to do in the stone down. Most of the stuff at the market place can be bought here as well, its those arts and crafts, The world is also very globalization, therefore I wouldn't put spending hight on my priorities.
However I would just book in at kendwa rocks and take the taxi to the old town back and forth, it really isn't worth paying extra money to stay the night in there. I stayed in the backpackers at kendwa rocks. You can't snorkel there exactly, but most of the guides on the beaches knows where the best snorkelling sites and where the dolphins go. Two of my friends who were divers took their gear with them, it was worth it for them, but I myself don't know jack about diving so I was satisfied with the gear they provided.