Issue52 - firewall input plugin and ACL addresses

Firewalling plus extra tests to keep at 100% code coverage.

Or catch this at the layer above, allow us to distinguish between the `None` case where the value was invalid and the `None` case where `gethostbyname` failed for the purposes of adequate logging.