(MODULES-1473) Deprecate type() function for new parser

The `type()` function will cease to work on the new parser because 'type' is a reserved keyword. The `type3x()` function may be used to continue similar functionality, but will be deprecated in favor of the built-in typing system.

The `type_of()` function has been included to introspect types in the new parser.
If not using 4x, this function should not be visible since the 3x parser/evaluator cannot handle the new types. It is therefore best to implement this function using the 4x function api (file in lib/puppet/functions, and with a slightly different setup.