Support more widget classes. Properly generate labels for widgets. Implement groups.