constraint: use autorequire hack only if necessary

Newer Puppet versions shall implement the #pre_run_check method
in the Type baseclass, along with code to call it during initialization
of the transaction.

Refrain from installing the autorequire hook if this is the case
in the running version of Puppet.