Robust adaptive backstepping design for course-keeping control of ship with parameter uncertainty and input saturation