Fix deserialization of metadata in example plugin
Add automatic support for identity casts to FunctionRegistry
Add support for generic type literals to LiteralInterpreter

When an expression is serialized the literal values must be turned back into nodes, and
previously this required a custom function hard coded for each type.  The commit adds
support for any generic type to be serialized properly without custom code