refine the event binding API
a new era: hybrid client-server rendering now possible
* API change and minor restructuring to accommodate hybrid rendering
* Custom elements now use go string instead of HTML file so that
distributing them is much easier