proper constant folding.
reorganized using inspiration from new CVXPY
basic operators implemented. need to implement atoms now
in the middle of rewriting atoms
rewrote all atoms in new-style. need to rewrite rewriter.
ironed out some bugs. need to attempt canonicalization now.
new canonicalization method works; extremely inefficient.