Fix #527

When language-ecmascript upgraded from 0.15 to 0.16 they added more
validation of what values are valid variables. This adds in protections
to make sure that qualified variables like List.map generate valid
JavaScript.
Switch to using the Helpers.prop instead of PropId directly
Use full names