Changes in JSON/template output and fixes in parsing

- Change in the JSON implementation where the pointer of a variable was searched for, the ID tag is used to match instead
- Allow definition of structs in global namespace
- Allow comments in global namespace
- HTML_TEMPLATE pragma does not resolve names at parse time
- HTML_TEMPLATE_VAR takes a comma-separated list of IDs to print out from the template