(maint) Guard preserve_configuration in acceptance

It is only useful to attempt to generate a local preserved_config.yml if
you are manually testing and may need to re-run.  Automated tools such
as Jenkins have tripped over this step if the logs or layout are
different, and there is no reason to abort a test run for this step.

This commit changes the behavior of the acceptance harness so that it
only preserves the configuration if you are running the manual
'test_and_preserve_hosts' task, or if you have specified you want this
behavior in your local_options.rb.  It is also a little more resilient
for failures when preserving the configuration.
So, if a single name is used, is it the hostname?  And whatever would be found in the capture group would equal node_info[:node_label]?  And would that be the same case if it was an ip address?