changed NONLIN to EXP
fixed cvxopt nonlin solver bug
cleaned up logic for choosing a solver