updated this branch with the changes from the lpsolver branch