Add TextArea widget, refactor null handling
Add ColumnWidgetFactory to find appropriate Widget for Column