more refactoring on ship actions.