OK, third attempt at a good fix that covers everything. Keep other mount interactions the same as originally, but just flip the mount vs. push order on boat types, giving push priority on boats. Required moving the Push menu command out of BaseVehicle.
Some optimisations to calculating artificial light values in large farms
Only update the artificial light level of a plant every 20 seconds, but force an update if a light nearby changes state
Added some slight randomisation to sprinkler splash invokes to space out the load