Fix error reporting for insane hostnames.

If you put some really silly values in (e.g. /) into hostnames then
the error message s super super cryptic.

This patch fixes that, so it's at least obvious what / where / why it's
failing if you use --trace --debug
Fix for rspec-system-puppet 0.3.x

Signed-off-by: Ken Barber <ken@bob.sh>
Update to also be for destination
Merge pull request #155 from bobtfish/error_reporting_fix

Error reporting fix
(#20125) Add archlinux firewall class and unit test
(#20125) Use PATH to find (ip|ip6)tables for (ip|ip6)tables provider
(#20125) Use PATH to find (ip|ip6|eb)tables for chain provider
(#20125) Add persistence support for Archlinux platform

This only works with facter 1.7.0-rc1 and up because os_key isn't
properly defined in facter 1.6.18 on Archlinux (it's set to Linux).
Merge branch '20125'

* 20125:
  (#20125) Add persistence support for Archlinux platform
  (#20125) Use PATH to find (ip|ip6|eb)tables for chain provider
  (#20125) Use PATH to find (ip|ip6)tables for (ip|ip6)tables provider
  (#20125) Add archlinux firewall class and unit test
Add an absolute path to iptables to make system tests pass

Signed-off-by: Ken Barber <ken@bob.sh>
Merge branch 'absolute_path_to_iptables_for_tests'

* absolute_path_to_iptables_for_tests:
  Add an absolute path to iptables to make system tests pass