NonlinearProgram iterates algorithms in fmincon

Solves #330. Now `NonlinearProgram` iterates algorithms in `fmincon` ('interior-point','sqp','active-set','trust-region-reflective') to search for a solution, if the user does not specify the algorithm.