add some fancy features
add another kind of widget
improve a bit