Don't override required, and be more careful with widget
Get widgets from instantiator, and move the source of googleapis into
the widget class
More more of the HTML out of JS and into the template, where we can
better play with it
Cleanups and make the field more condensed