Rewrite the enumeration unwrapping to return an expression.
Move responsibility for assigning to ${declName} out of getJSToNativeConversionTemplate.

This commit does not make any change to the generated code.
Remove the 'retval' local variable from union TryConvertTo methods.
Rewrite dictionary codegen to initialize members directly into the struct.