Sequential Nonlinear Programming Without A Penalty