A complete rewrite of the whole bloody thing
Simply by deoptimizing
Use Attr as array
Added Button class
Rethough the way Decorators work.
Fixed Closure attributes
Refactor FormBuilder factory
Renamed Element to FormElement
Renamed Node to Element
Added Hidden element
Fix attr casting null
Added Group::remove
Fixed render for hidden
Added dindent
Fixed choice element
Fixed textarea
Other minor stuff
All elements have the same constructor with ($options, $attr)
All decorators have the same constructor with ($options)
Simplify factory methods
Hyperlink and button use the same base class
Fix set empty value for choice
Decorator applied only at render
No longer let Decorator modify options
Default options should be set in constructor, not getOptions
Allow Decorator to modify element content prepend and append HTML
Added grid / horizontal-form support for Bootstrap decorator
Added btn-labeled support for Bootstrap decorator
Added input-group support for Bootstrap decorator
Renamed Control to BaseControl and FormElement to Control
Group is no longer abstract
Added div
Implemented form generator (for MySQL)