So historically I can think of the following types of water vehicles:
(1) Huge ocean-going ships which cannot go up rivers (too big)
(2) Riverboats and barges which cannot go on the open ocean, or into narrow canals
(3) Medium-sized ships and lake boats which can handle both the ocean or large lakes, and rivers
(4) Narrowboats which can handle rivers and narrow canals
pak128.britain already seems to have ocean/big lakes, "Wide Rivers", "Small Rivers", and "Streams".
If historical plausibility is the goal, I would suggest having two types of Canal, narrow and wide, with narrow being cheaper, and with each being faster than the corresponding type of river, but only slightly faster. Small rivers should be navigable but restricted.
I would also suggest having:
(1) a class of barges and river ferries which work *only* on wide rivers and canals
(2) a class of sailing/steam ships which work *only* in the ocean
(3) a class of smaller ocean ferries and sailing ships which work on both
(4) a class of narrowboats and tiny ferries which work on small rivers/narrow canals, wide rivers and canals, but not the ocean
It's actually plausible to use weight restrictions to determine who can go into which, since it's related to the ships' draft, but waytype restrictions would work just as well.
If ships are ever prohibited from walking on top of each other (which I devoutly hope will happen some day -- they should follow road-like rules), canal one-way signs should also be added. Many canals were actually only one boat's width wide and were therefore one-way outside of 'passing sections'. I would expect each canal to have intermittent canal basins for ships to pass each other -- which can be built convincingly right now using the existing tools.
I'd suggest drawing the river barges for goods first, since there are a lot fewer distinct designs historically than for ocean-going ships or passenger ferries. Basically there's just poled, horse-drawn, and motor-powered, and they all look pretty similar to each other anyway, and go almost the same speed (very slow upstream, faster downstream). If only there were a way to tweak the game engine so boats could 'go with the flow', some way of adding a speed to a river vehicle going downstream and subtracting it upstream.... but how could the game engine know which way was downstream?