cleaned up LCPSolver