Replace observers with callbacks

Hey guys, finally I found time to do it. What do you think about it?
So the question is about conveniency, nothing more...