Hyperbolic penalty: a new method for nonlinear programming with inequalities