Refactor FileInfo out into a separate file