1. Add unit testing for crazier things like random invertible matrices. 2. Add real docstrings everywhere. 3. Try to eliminate the code in matrices.py. 4. Make it work on a cartesian product of cones in the correct order. 5. Make it work on a cartesian product of cones in the wrong order (apply a perm utation before/after). 6. Rename all of my variables so that they don't conflict with CVXOPT. Maybe x -> xi and y -> gamma in my paper, if that works out. 7. Make sure we have the dimensions of the PSD cone correct. 8. Use a positive tolerance when comparing floating point numbers. 9. Come up with a fast heuristic (like making nu huge and taking e1 as our point) that finds a primal feasible point.