Foo Widgets with Varying Define Syntaxes

ERROR or [init failed] text below indicates a failure in dojo.widget.defineWidget or dojo.lang.declare.

html.FooA uses no initializer
html.FooB uses initializer as parameter
html.FooC uses initializer as property
html.FooD uses initializer as faux-constructor

html.Foo2A uses mixin-superclass and no initializer
html.Foo2B uses mixin-superclass and initializer as parameter
html.Foo2C uses mixin-superclass and initializer as property
html.Foo2D uses mixin-superclass and initializer as faux-constructor

html.Foo3A uses explicit renderer, no initializer
html.Foo3B uses explicit renderer, initializer as parameter
html.Foo3C uses explicit renderer, initializer as property
html.Foo3D uses explicit renderer, initializer as faux-constructor

DefaultFooA uses default renderer, no initializer
DefaultFooB uses default renderer, initializer as parameter

HtmlFooOld uses simple deprecated
html.fooOld uses deprecated