Restructuring of solve() method to allow greater configuration of LP Solving