Construct the UI for this widget from a template, setting this.domNode.
Lookup cached version of template, and download to cache if it
isn't there already. Returns either a DomNode or a string, depending on
whether or not the template contains ${foo} replacement parameters.