[WIP] First Order Semidefinite Program Solver

This branch implements a first order method to approximately solve semidefinite programs. The code is only partially working, but should start stabilizing over the next week or so.