Allow external module to take part in the vesselState update

Implementation subject to change