Projective transformations for interior point methods, Part I: Basic Theory and Linear Programming