Fix puppetlabs/puppetlabs-firewall issue 129 for puppet 3.x support [#852234]

Previously method_missing was enough to create dynamic methods but Puppet 3.0
broke that functionality. So here we used 'define_method' instead to work
around that.

Signed-off-by: Ken Barber <ken@bob.sh>