Updated the protobuf loading code to latest format.

Updated the templight message definition file and added support for dictionary-compressed template names from the protobuf files.

The code that I added to load the dictionary-compressed template names is very rudimentary (just a full string substitution to form the original names). Ideally, as noted in the code, this could involve a smarter expansion scheme that could have a limited depth, which would both save time and memory (when loading) and could provide nicer names like something like "foo::bar<some<deep<template>>>" would be "foo::bar<..>" (at level 1), "foo::bar<some<..>>" (at level 2), and so on, which is what the protobuf format naturally does by replacing template parameters with placeholder characters and references to the dictionary entry of the names they stand for. I might work on some code to do this (because it's the kind of thing I would also need for the templight debugger, and I know that people also want this for metashell), so stay tuned.