func Resolve(v interface{}, c Context) (out interface{}, err error)
Creates a deep copy of whatever is passed to it
and evaluates string nodes as templates with the provided context.
This function is intended to be used with JSON objects, so does not handle pointers and structs.