(Maint) TestHelper already clears global state

Previously, the specs were attempting to clear settings and storage
global state before/after each test, but this logic is now handled by
Puppet::Test::TestHelper, since specs often forget to do so, and leak
global state across specs.
(Maint) Don't keep Tempfile open while specs are running

Previously, the specs were creating a Tempfile instance in a before
block, writing to the file, but keeping the handle open, until the
after each block ran. This was done to ensure the Tempfile wasn't
deleted while the test was running.

Also the test for `File.rename` behavior would fail on Windows, because
a file cannot be renamed while any open handles to the file remain.

This commit changes the tests to use the PuppetSpec::Files methods for
generating a unique, temporary, and non-existent filename, and ensures
that any file/dir created during the test will be deleted, even if the
test fails during the run.
(Maint) Stop asserting nothingness

Previously, we were asserting that nothing was raised, when in this
case is not very useful.

Also changed the spec to use tmpfile, to ensure it is cleaned up after
the test runs.
Merge branch 'issue/stable/22471-cleanup-tests' into stable

* issue/stable/22471-cleanup-tests:
  (Maint) Stop asserting nothingness
  (Maint) Don't keep Tempfile open while specs are running
  (Maint) TestHelper already clears global state
Merge remote-tracking branch 'upstream/stable'

* upstream/stable:
  (Maint) Stop asserting nothingness
  (Maint) Don't keep Tempfile open while specs are running
  (Maint) TestHelper already clears global state