Widgets

Sweet! Well that definitely makes life easier. Nevertheless, how about we require the display name as an html class so this can be a simple "." query. Having a `netlogo-widget` class that all widgets have and a `netlogo-button` class for buttons (and similar for the other widgets) would also help in making the resulting pages easy to style.

BTW, for custom html attributes, technically they should be prefixed with `data-`, so `data-netlogodisplay` in this case, though all browsers don't usually care. That could fix the problem with browsers not saving these attributes.

Also, you can do a [query selector on an arbitrary attribute](http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#attribute-selectors) like so: `querySelectorAll("[attribute='value']")`