Infeasible-interior-point methods for linear and convex programming