List of edits by pages: 11 Feb: pg 9 12 Feb: pg ii - fixed contents table 19 Feb: pg 12 22 Apr: pg 26 - remark about indefinite Hessians added 22 Apr: pg 32 - removed "to ensure global convergence" 22 Apr: pg 40 - grad cj point into domain 22 Apr: pg 41 - typo in Section 7.4: changed T_{\Omega}(x) to T_{\Omega}(x_*) - tangent cone at critical point 22 Apr: pg 43 - typos in Algorithm 8.1: second x_{n+1}, \lambda_{n+1} index changed to n. Iteration variable changed from k to n. 22 Apr: pg 45 - typo in Section 8.2: A(x) changed to A(x_*) 29 Apr: pg 51 - Theorem 9.4 - fixed reference to assumptions (Prop 9.2) and separated results into two equations (56,57). 29 Apr: pg 52 - added discussion of "exact" merit functions.