First commit after first paper. Need lots of clean up, and to replace optimal with freedman alg.