Nonlinear Model Predictive Path Following Controller with Obstacle Avoidance