First pass at ILP solver. No dual stuff yet.