Rocket engines are (depending on the design) quite capable of operating underwater. As for an advanced underwater weapon, I'd go for a rocket propelled supercavitating torpedo. Russia actually has them in service: http://en.wikipedia.org/wiki/VA-111_Shkval

I'm not too familiar with hydrodynamics, but it might be possible to make small supercavitating missiles suitable for personal weapons.

Lasers suffer from significant attenuation under water. Certain frequencies are better but still suck. The same problems that prevent us from using laser weapons IRL still apply under water, except for cooling. It might be possible to get something usable.

The problem with slugthrowers is drag. If they have lower energy, they survive, but don't go very far, and if they have high energy, they disintegrate, and don't go very far. Switching to electromagnetic slugthrowers would not help. That's why in real life, dart/spear guns are used. They have a lot more mass than a bullet, are much thinner for their size, and travel MUCH slower, and that's why they are able to work.

I can't see the magnet thing working at all, as a mounted weapon it would have virtually no range, be stupendously mass and energy intensive, and would do more damage to the mounting ship than to any target. As a bomb, again it has virtually no range, would be stupendously heavy and energy demanding, and a plain old explosive would work far better in just about every way.