minor fixes
Added: observing with custom listener. Changed: core rendering logic.
Custom listeners