chat-client: rendering a widget works for v3 flow

* copied over widgetry lib from internal example
* currently rendering an unrelated chat sample widget
first pass at chat widget

just renders html template
set-nickname WIP
moved set-nickname to its own widget
add minimal send-message form widget

also abstracted common widget/create! to util