Moving validation back into sudo::sudoers class

Also adding basic validate_cmd from stdlib
Add logic around checking Puppet version

Without this, the spec will fail with `Invalid parameter validate_cmd`