A partially working version of the QP solver.

It seems to be having trouble with infeasible points (or at least is
incorrectly identifying infeasible points).
Some re-writing will have to be done to accomodate this, to incorporate some
sort of elastic bounds (probably following [Betts2010]).
Corresponds to end of thesis work on PyIntropt

Work will probably continue in the future though. Thesis chapter outlining
what has been done will (hopefully) soon be added.

At this point, the sqp solver is not very robust, but it is functional and can
solve some test problems. Major issues are the qp solver's difficulty in
finding feasible points, stalling, and problem formatting issues (that needs to
be traced down further).