adding base widget

split base widget into two widgets
Fixed few problems:
- api method signatures were inconsistent
- separeted composeRequest/dispatchRequest
- made base widget slightly more generic
- activated (and fixed) multi-base widget tests
- added two-step execution to multi-callback widget
- fixed indendation
Merge branch 'aholachek-base-widget'