There are no ATMs on board. There is a safe in your room, so cash is fairly safe. I usually bring my credit card and a little in traveler's cheques. THe only place you need cash is on the islands. Everything on the ship is on your KTTW card, which I pay off with my credit card (it is swiped when you check in). Guest services can do any of the options you suggested--cash personal or traveler's cheques, charge on-board expenses to your credit card, charge tips, etc.
Most stores on the islands will take credit cards, but you may get a little better price for cash. Street vendors want cash.....you don't need much! Taxis cash too.
If you do the Western Magic, admission to Chankaunab is cash only, but once in, your credit card is good.