Gosh - a whole lot of great fixes here! I couldn't resist playing with it myself, so here's my offering...
First, I adjusted the levels on each channel individually, then I made a curves adjustment for color. I just wanted to get the girl to look fairly normal here. I sharpened by making a dupe, switching to Lab mode, applying USM and then copying that to a layer on my original which I set to overlay and made the layer opacity about 50%.
Then, I thought the ocean was too light, so I duplicated the layer and made a layer mask (see the layer mask tutorial). I ran a slight gaussian blur on the layer mask, and then I adjusted the levels on the ocean to darken it.
I didn't take a lot of time with the mask, so the hair and donkey fur is a bit off, but if you spend a bit more time on it you can make a better one.