Today I limited the movement of the harpoon turret to 45 degrees left and right, and created a basic harpoon. When you press space, this harpoon appears at the barrel of the gun and rotates to an appropriate angle. It doesn't move yet.
Thinking ahead, I could perhaps draw the chain from the harpoon to the boat as a simple line. That way I could draw it on the fly as it extends, re-drawing the line in each frame. This would allow the boat to continue bobbing up and down. The alternative is to freeze the boat in place until the harpoon has finished firing. This is what happens at the moment (the boat stops moving when a firing action is happening). I'll have to wait and see what works best.