Sail bearing, that is geared down by 8 and that will let you catch wind. Wind would be a global variable ranging from 0 to 364, with every tick it would randomly get increased or decreased by an amount from 0.1 to 1 degree. Wind could be tracked with a special block called wind tracker. It would point into the direction of the wind. The closer the bearings are aimed to the wind - the better the speed of the ship. The ship can not move sideways because/if it has a keel - a line of special keel chassis on it submerged half. The longer and bigger the keel - the less the ship would drift sideways, altho any more than 2-3 blocks deep would be unnecessary.
Back to the sail bearing - it can only assembled if it has a construction that includes wool blocks as sails, fully glued, connected to it.
Also, a much more expensive Redstone-infused Wind Tracker should exist that would output a redstone signal in the direction of the wind.
That's it, probably.