Basic widget class.