When @zaphod42 , @ferventcoder and I had originally chatted about this a few weeks back, @zaphod42 and I had agreed that we should replace all call sites to use this new abstraction while this work was being done... given it would be a source of confusion to anyone adding new code.  i.e. why are there conflicting uses of `File`, `FileTest` or `Puppet::FileSystem::File` in the same source file.

This is partly why this PR got out of hand with scope creep / file touches.  At the same time, I do think it was the right thing to do, even it was painful to fix up tests correctly, etc.

My 2c