Refactor Page to depend less on its underlying File.