1. Add unit testing for crazier things like random invertible matrices. 2. Try to eliminate the code in matrices.py. 3. Make it work on a cartesian product of cones in the correct order. 4. Make it work on a cartesian product of cones in the wrong order (apply a perm utation before/after). 5. Make sure we have the dimensions of the PSD cone correct. 6. Come up with a fast heuristic (like making nu huge and taking e1 as our point) that finds a primal feasible point.