clean up code and add directory structure
trying to generalize to more LPs
Basic LPs working
more test cases
add TODOs
Merge branch master with karanveer